7

Pandas と Pyarrow を使用してデータを寄木細工しようとしています。同じスキーマを持つ必要のない何百もの寄木細工ファイルがありますが、列が寄木細工間で一致する場合、それらは同じデータ型を持つ必要があります。

結果の寄木細工のデータ型が私が望むものではない状況に陥っています。たとえばint64、列に を書き込むと、結果の寄木細工がdoubleフォーマットされます。これは、データの 99% が正しく型付けされている処理側で多くの問題を引き起こしていますが、1% のケースでは型が間違っているだけです。

numpy をインポートして、この方法で値をラップしようとしました-

import numpy as np

pandas.DataFrame({
  'a': [ np.int64(5100), np.int64(5200), np.int64(5300) ]
})

しかし、私はまだ時折ダブルを取得しているので、これは間違った方法であるに違いありません. 寄木細工ファイルの列全体でデータ型が一貫していることを確認するにはどうすればよいですか?

アップデート-

これは、列に 1 つ以上Noneの が含まれている場合にのみ発生することがわかりました。

data_frame = pandas.DataFrame({
  'a': [ None, np.int64(5200), np.int64(5200) ]
})

寄木細工は混合されたNone-int64列を処理できませんか?

4

1 に答える 1