3
私はすべてのセルにいくつかの値を保持するcsvファイルを読み込もうとしていますが、私はそれらを1つのint形式のバイトにエンコードしてパンダのセルに格納します) - > 771)。そのためには、read_csv
関数のコンバーターパラメーターを使用したいと思います。問題は、私が手元にある列の名前を知りませんし、変換器に渡す値は、列名をキーとして持つべきであるということです。実際、私はすべての列を同じ変換関数で変換したいと思っています。そのために、書く方が良いでしょう:read_csvコンバータの不明な列
read_csv(fhand, converter=my_endocing_function)
より:
read_csv(fhand, converters={'col1':my_endocing_function,
'col2':my_endocing_function,
'col3':my_endocing_function,})
その可能性のようなものですか?
dataframe = read_csv(fhand)
enc_func = numpy.vectorize(encoder.encode_genotype)
dataframe = dataframe.apply(enc_func, axis=1)
しかし、私はこのアプローチがあまり効率的でないかもしれないと思います。 ところで、私はto_stringメソッドで使用されているフォーマッタと同様の疑問を持っています。
私は事前に列の数を知らなくても問題はありませんが、それは問題ありません。私は、applyメソッドを使ってロードした後、データフレームの変換を続けると思います。 –
@JoseBlanca:最初にテキストバッファに読み込み、ヘッダー行を解析してcolsの数を判断します。これで、テキストバッファから変換元とread_csvを作成できます。 – smci