当我尝试将dask数据帧保存到csv时,我总是收到一个错误。简而言之,我有一个由10列20行组成的daskdf,然后加载了350列600多万行的daskdf(~6GB)。我需要做一个相当简单的左加入熊猫df。完成连接之后,我使用final.dtypes
查看最后一个daskdf的数据类型,它显示了12列,正如我所希望的那样。但是,当我尝试将名为final
的dask df转换为.csv时,我总是得到一个错误,它引用了dask_df
中的列,即使它们不在最终的表中。发生了什么事?我该如何纠正?如有必要,我可以提供样品数据。在
错误消息:
Usually this is due to dask's dtype inference failing, and
*may* be fixed by specifying dtypes manually by adding:
dtype={'Authorized Official Telephone Number': 'object',
'Other Provider Identifier Issuer_33': 'object',
'Other Provider Identifier Issuer_34': 'object',
'Other Provider Identifier Issuer_35': 'object',
'Other Provider Identifier Issuer_36': 'object',
'Other Provider Identifier Issuer_37': 'object',
'Other Provider Identifier Issuer_39': 'object',
'Other Provider Identifier Issuer_40': 'object',
'Other Provider Identifier Issuer_41': 'object',
'Other Provider Identifier Issuer_42': 'object',
'Other Provider Identifier Issuer_43': 'object',
'Other Provider Identifier Issuer_44': 'object',
'Other Provider Identifier Issuer_45': 'object',
'Other Provider Identifier Issuer_46': 'object',
'Other Provider Identifier Issuer_47': 'object',
'Other Provider Identifier Issuer_48': 'object',
'Other Provider Identifier Issuer_49': 'object',
'Other Provider Identifier_37': 'object',
'Other Provider Identifier_48': 'object',
'Other Provider Identifier_49': 'object',
'Provider Business Mailing Address Fax Number': 'object',
'Provider Business Practice Location Address Fax Number': 'object'}
to the call to `read_csv`/`read_table`.
我的代码:
^{pr2}$
如果你真的不需要包含任何列的话。在
您传递的是dtype=str,但我认为也许应该传递dtype=object,这正是Pandas用来表示任何非数字数据的。在
在dask.dataframe.read_csv文件函数将给出一条错误消息,鼓励您使用dtype=object。它实际上给了您完整的
dtype={...}
指令,您可以通过它来让错误消息中的内容正常工作。在相关问题 更多 >
编程相关推荐