从 dask 数据帧中删除有问题的列



我有一个dask数据帧,其中包含一个有问题的列,(我相信)是每次我尝试对数据帧执行任何操作时都会抛出的特定错误的来源(无论是head,还是to_csv,甚至当我尝试使用(不同的)列进行子集时。该错误可能是由于数据类型不匹配造成的,如下所示:

ValueError: invalid literal for int() with base 10: 'FIPS'

所以我决定'FIPS'使用

df = df.drop('FIPS', axis=1)

现在当我做df.columns时,我不再看到'FIPS',我认为这意味着它确实已被丢弃。但是当我尝试将不同的列写入文件时

df.column_a.to_csv('example.csv')

我不断收到同样的错误

ValueError: invalid literal for int() with base 10: 'FIPS'

我认为这与dask的懒惰方法有关,因此它延迟了下降,但任何解决方法都会非常有帮助。

基本上,我只需要从df中提取单列(column_a)。

尝试在删除后转换为熊猫数据帧

df.compute()

然后才写入 CSV

最新更新