python - read_csv 读取分类值?

标签 python pandas csv categorical-data

我想知道是否有办法在 read_csv() 过程中读取分类值。

通常您可以在事后进行转换,例如:

df.zone = df.zone.astype('category')

此时 df 占用了更多内存,我正在寻找一种方法来减少它。

我尝试过以下方法:

parking_meters = pd.read_csv('parking_meter_data.csv', 
                             converters={'zone': pd.Categorical(), 
                                         'sub_area': pd.Categorical(), 
                                         'area': pd.Categorical(), 
                                         'config_name': pd.Categorical(),
                                         'pole' : str(),
                                         'longitude' : np.float(),
                                         'latitude' : np.float()
                                        })
parking_meters.memory_usage(deep=True).sum()

但是,分类数据需要实际数据的初始化参数,该参数位于 CSV 文件中。

最佳答案

让我们尝试一下dtype:

parking_meters = pd.read_csv('parking_meter_data.csv', 
                             dtype={'zone': 'category', 
                                         'sub_area': 'category', 
                                         'area': 'category', 
                                         'config_name': 'category'
                                        })

关于python - read_csv 读取分类值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46616504/

相关文章:

java - 如何从 .csv 文件中拆分数据集以用于 Java 中的训练和测试?

python - 在 Python 中使用 Stanford Tregex

Python 正则表达式

python - 具有 Ctypes 的独立 CDLL 库实例

python - Pytest monkeypatch 不适用于导入的函数

python - 要求 pandas 数据帧输入有两个列对或抛出错误

python - isin pandas 的问题

python - 使用 chunksize 迭代地获取推断的数据帧类型

r - 使用 purrr::map 将多个数据帧写入 csv 文件

php - 如何通过 PHP 导入读取 CSV 来提取 XML 属性?