teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

追記

2019/08/29 14:27

投稿

farinelli
farinelli

スコア61

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,11 @@
1
1
  csvファイルの列を入れ替えた上で、x軸上でグループ化したいのですが、グループ化をする以前に何も出力されません。
2
2
  初歩的な事で恐縮ですが、下記の写真のような出力結果を得る為にお知恵をお貸しいただけますと幸いです。宜しくお願いします。
3
+
4
+ 追記:
5
+ if score.iloc[0] >= score.iloc[1] * 5:をif score.iloc[0] >= score.iloc[1] * 2:に訂正した結果、csvデータ中の行(A~F)で条件を満たすB以外の5行のグラフは以下のようになっております。(5枚のグラフのスクリーンショットをスライド上に並べたものの、スクリーンショットを撮りました。)
6
+ if文内の処理の内、X軸の要素の入れ替え(df.loc[:, ["One", "Three", "Five", "Two", "Four"]])だけが上手くいってません。("One"~"Five"と、元のcsvファイル通りの並びになっている事が確認されました。)
7
+ ![イメージ説明](1057b26f27b0deba590b26dd6de507d2.png)
8
+
3
9
  ### 理想の出力結果
4
10
  ![イメージ説明](574f8eea0a7812976c97f9ceaf872004.png)
5
11
 
@@ -12,7 +18,7 @@
12
18
  for idx, row in df.iterrows():
13
19
  #tmp = row.sort_values(ascending=False)
14
20
  score = row['One':'Five'].sort_values(ascending=False)
15
- if score.iloc[0] >= score.iloc[1] * 5:
21
+ if score.iloc[0] >= score.iloc[1] * 2:
16
22
  df.loc[:, ["One", "Three", "Five", "Two", "Four"]]
17
23
  plt.bar(df.columns, row.values.tolist(), align="center", width=1.0,tick_label=df.columns)
18
24
  plt.xticks(rotation=85)
@@ -24,6 +30,11 @@
24
30
  ```renshu.csv
25
31
  Name,One,Two,Three,Four,Five
26
32
  A,3,3,14,4,2
33
+ B,3,8,2,4,5
34
+ C,3,2,12,4,3
35
+ D,2,4,5,14,6
36
+ E,4,3,5,12,4
37
+ F,10,2,3,4,2
27
38
  ```
28
39
 
29
40
  ### 補足情報(FW/ツールのバージョンなど)