データ分析で pandas を使っていて、データフレーム同士を
df2 = pd.concat([df2, df1], axis = 1)
のように concat で結合しています。
ここで、
df1 : pd.read_csv で取得した CSVファイルが元の Series
df2 : df1 を for文で フォルダ内の該当データを concat で結合させた Dataframe
です。
問題は いくつかのCSVファイルを読み込む際に
Shape of passed values is (a1, b1), indices imply (a2, b2)
的なエラーがでます。 a1,a2,b1,b2 は Index と Column の数だと思われ、
これらが 一致していないから エラーということは 何となくわかるのですが…。
実際の処理中では a1 = a2、 b1 ≠ b2 で エラーとなっています。
(a1 = a2 = 14, b1 = 153, b2 = 150 )
concat を axis = 1 で行うため 列方向にデータフレームを 結合させているのですが、
df1 と df2 の index、column 数は違っていても良いはずです。
ちなみに df2 の index が 132個、 column が 13個 の状態で (※)
index 47個、 column 1個 の df1 を結合させたら エラーがでました。
結合の結果、 a1 = 153, a2 = 150 となりました。
※
column は 1個ずつ 結合するので、df2 column 数が 13個でエラーが出たということは、
それまで 13個は 結合ができていたということです
■ 疑問1
具体的に このエラーで示す a1 と a2 というのは 具体的には 何の数値なんでしょうか?
どちらか 1つが結合後の index の数だとして、もう1つが 意味する数値の意味がわからないため
エラーの原因が理解できませんでした。
■ 疑問2
エラーが起きる一部の CSVファイルを 取り除くと うまく処理ができます。
その CSVファイル の index のラベルを見ても 他との違いが一見判らず
なぜ 特定のCSVファイルで エラーが起こるのか わかりません。
問題となるCSVファイル・データフレームの 不具合部分を見つける方法は なにかないでしょうか?
実現したいこと
- pd.concat で エラーを発生させない
- エラーを発生させるCSVファイルの修正箇所を調べる方法
問題の発生した環境
Python 3.6.6
pandas 0.23.4
曖昧な質問で申し訳ありませんが、なにかわかることがあれば お願いいたします。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/16 21:43
2018/10/16 23:13
2018/10/17 12:03