使用分类标签初始化多个数据框列

时间:2016-09-13 15:36:45

标签: python pandas dataframe

问题陈述:

我需要将1000个csv文件加载到数据框中。所有文件都具有相同的列。在所有情况下,每列中的值属于有限可能值集(每列不同)。值的长度在100的字符中。我事先并不知道这些价值观。

我的方法是解析每个文件并转换为数据框,使用分类列并将它们存储在hdfs存储中。后来将它们汇总到“内存中”数据框中。

由于类别值冲突导致我无法连接所有这些数据帧,我想创建一个空数据帧,在我处理的文件中看到相同的列和所有类别值。

空的分类数据框是我一个接一个连接的起点。

df=pd.DataFrame(columns=["A","B"], dtypes={"A":"category","B":"category"} categories={"A":["a","b","c"],"B":["A","B","C","D"]})

df.concat[df1,df2,df3,d4]

左右我希望......

不同的策略会更好吗?

这样的东西

1 个答案:

答案 0 :(得分:0)

这已在pandas v0.19.0中得到解决,请参阅issue in gihubin pandas docs v.1.19 dev

然而,还有另一篇帖子对v1.19解决方案pandas with category replacement

这个同样的问题提供了优秀而详细的解决方案