私はPandas v0.18.1でread_csvを使ってデータを読み込んでいます。私は、CSVファイルの行と列のサブセットを選択したいので、私は試してみました:usecolsとskiprowsを同時に使用する(Pandas read_csvで)エラーが発生する
df_a = pd.read_csv(filepath, index_col = False, usecols=cols_to_use, skiprows=1)
これは私にとValueErrorを与える:Usecolsには名前が一致していません。 cols_to_use 注列名のリストですが、私はのskipRowsの一部を残している場合:
df_a = pd.read_csv(filepath, index_col = False, usecols=cols_to_use)
私はusecolsビットを除外し、バックでのskipRowsを置けば、それは正常に動作し、同様に、それが正常に動作しますあまりにも。
これはバグかもしれません(usecolsとskiprowsを同時に使用することはできません)?私はドキュメントを見てみましたが、それについての言及は見つかりませんでした。それとも、両方を使うことができないという論理的な理由がありますか?
(あまりにも高く評価されるだろうcsvファイルから列と行のサブセットを選び出すのより良い/より多くの明白な方法があるかどうか!)事前に
ありがとう!
何をしようとしているのか分かりません。しかし、 'cols_to_use'は、それらのカラム名がヘッダー行にある場合(' skiprows = 1'でスキップするかもしれません)、または整数のリストであればカラム名のリストになります。列の名前を付けようとしている可能性があります。その場合、 'names = cols_to_use'が必要です。 – piRSquared
読んでいるファイルの例を教えてください。そして作業コマンドの出力を提供できますか? 私の推測では、ファイルには最初の行に列名が付いていると思います。 skiprowsを使用すると、pandasは最初の行を読み込まない可能性があり、2行目から列名を読み取る可能性があります。 –
質問には、「csvから列と行のサブセットを取り出す」という質問があります。だから、 'names = cols_to_use'は行く方法ではないようです。 –