我有一个具有3个不同级别的分类变量。变量的每个级别都指向一个不同的组(小,中,大)。
我想为每个级别创建新的数据帧。一个用于小型,一个用于中型,一个用于大型。
我尝试使用下面的代码来做到这一点...
group1 = data([data [“ categorical_variable”] ==“ Small”])
但是,我收到以下错误消息,我不确定为什么会看到此消息吗?
AttributeError:“系列”对象没有属性“ convert_objects”
谢谢!
答案 0 :(得分:0)
这里推荐使用this并保存在字典中
groups = dict(data.groupby("categorical_variable").__iter__())
#print(groups['Small'])
#print(groups['Medium'])
如果您确实需要三个单独的变量,请在sort=True
中注意GroupBy
large_df, medium_df, small_df = tuple(df for _, df in data.groupby("categorical_variable"))
答案 1 :(得分:0)
尝试一下:
small_df = data.loc[data["categorical_variable"]=="Small", :]
medium_df = data.loc[data["categorical_variable"]=="Medium", :]
large_df = data.loc[data["categorical_variable"]=="Large", :]