4
私は非常に大きなデータフレームを持っていますが、すべての行を繰り返し処理しないようにし、列全体を16進文字列からintに変換したいとします。 astypeで文字列を正しく処理することはできませんが、単一のエントリで問題はありません。データ型がベース16であることをastypeに伝える方法はありますか?pandasデータフレーム列を16進文字列からintに変換する
IN:
import pandas as pd
df = pd.DataFrame(['1C8','0C3'], columns=['Command0'])
df['Command0'].astype(int)
OUT:
ValueError: invalid literal for int() with base10: '1C8'
これは機能しますが、行の反復を避けたいです。
for index, row in df.iterrows():
print(row['Command0'])
でそれを読んで、明示的にフォーマットをしても良いだろうという、その後は何か、それを伝える方法がある場合、私はそうCSV pd.read_csv(open_csv, nrows=20)
からこれをで読んでいます!
感謝。私はまた、あなたが明示的にコンバータのケースのベースにそれを伝える限り、あなたは '0x'を適用する必要はないことを発見しました。 'df = pd.read_csv(open_csv、nrows = 20、コンバーター= {'Command0':ラムダx:int(x、16)}) – kaminsknator