熊猫:将类别转换为数字

萨钦鲁克

假设我有一个包含以下国家/地区的数据框:

cc | temp
US | 37.0
CA | 12.0
US | 35.0
AU | 20.0

我知道有一个pd.get_dummies函数可以将国家/地区转换为“一次性编码”。但是,我希望将它们转换为索引,以便获取cc_index = [1,2,1,3]

我假设有一种比使用get_dummies和numpy where子句更快的方法,如下所示:

[np.where(x) for x in df.cc.get_dummies().values]

这在R中使用“因素”更容易做到,所以我希望熊猫也有类似的东西。

约翰·兹温克

首先,更改列的类型:

df.cc = pd.Categorical(df.cc)

现在,数据看起来很相似,但是是按类别存储的。要捕获类别代码:

df['code'] = df.cc.cat.codes

现在您有了:

   cc  temp  code
0  US  37.0     2
1  CA  12.0     1
2  US  35.0     2
3  AU  20.0     0

如果您不想修改DataFrame,而只需获取代码:

df.cc.astype('category').cat.codes

或使用分类列作为索引:

df2 = pd.DataFrame(df.temp)
df2.index = pd.CategoricalIndex(df.cc)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将编号类别转换为命名类别

来自分类Dev

如何在R中从类别转换为数字

来自分类Dev

如何在R中从类别转换为数字

来自分类Dev

将数据框字符串类别转换为数字

来自分类Dev

如何将scikit的30个类别转换为数字

来自分类Dev

Pandas:将类别转换为数字时如何处理 nan 值

来自分类Dev

无法将类别转换为ParseObject

来自分类Dev

R:如何将类别转换为列?

来自分类Dev

Outlook日历:将颜色类别转换为日历

来自分类Dev

C#-将子类别转换为具有可变类型的父类别

来自分类Dev

将magento的产品页面类别转换为分层类别

来自分类Dev

如何将一系列索引/类别转换为分类数组

来自分类Dev

python/pandas - 按类别转换 value_counts

来自分类Dev

如何将数字转换为熊猫列中的类别

来自分类Dev

如何使用熊猫将连续数字转换为类别?

来自分类Dev

如何使用熊猫将连续数字转换为类别?

来自分类Dev

如何使用熊猫将连续数字转换为类别?

来自分类Dev

将熊猫数据框转换为数字

来自分类Dev

将Android Api级别转换为平台版本

来自分类Dev

将级别转换为 r 中的数据框列

来自分类Dev

将数字sas日期转换为熊猫中的datetime

来自分类Dev

将字符串转换为熊猫数字列表

来自分类Dev

熊猫将数字转换为列表的相应元素

来自分类Dev

在 Pandas 中将有序级别转换为数字

来自分类Dev

为什么我们将整数除法分别转换为“浮点数”?

来自分类Dev

将两列分别转换为因子的1列和R的1列对应值

来自分类Dev

将每个<attr>标题分别转换为ISO8601

来自分类Dev

将因子的级别转换为数据帧中的新因子

来自分类Dev

将字母转换为数字

Related 相关文章

热门标签

归档