说我有一个大型的水果数据框架。我有数千行,但只有大约30个唯一的水果名称,因此我将该列设为类别:
df['fruit_name'] = df.fruit_name.astype('category')
现在这是一个类别,我可以不再过滤它吗?例如,
df_kiwi = df[df['fruit_name'] == 'kiwi']
将返回TypeError(“无效类型比较”)
如果我尝试创建一个“虚拟”数据框并与之合并,则会收到ValueError:“您正在尝试在int8和category列上合并...”
df_dummy = pd.DataFrame(data={'fruit_name': 'kiwi'}, index=range(1))
df_dummy['fruit_name'] = df_dummy.fruit_name.astype('category')
df_new = df.merge(df_dummy, how="inner", on="fruit_name")
我是否会在分类列上丢失某些合并和过滤器功能,还是我做错了这个(对于dask和pandas来说我还是很陌生)。谢谢!