复制时将列转换为数值
Transforming columns into numerical values when copying
我有一个通过
读入的数据框
data = pd.read_csv("animals_clean.csv")
它包含一个包含超过 67000 个值的列,并且在整个过程中重复了 80 多个相同的值。
如:
Ailurus
Harpia
Alligator
Branta
Araucaria
Branta
Alligator
我想在它旁边创建一个列,它接受每个单独的类型并为其分配一个数值。
比如
1
2
3
4
5
4
3
目前我唯一的选择是通过
手动完成
data['animal'].replace(['harpia'], ['2'],inplace=True)
但是这不可行,因为这需要时间
你可以试试
df['num_A']=df.A.astype('category').cat.codes
或
df['num_A']=df.A.factorize()[0]
或
df.groupby('A').ngroup()
我有一个通过
读入的数据框data = pd.read_csv("animals_clean.csv")
它包含一个包含超过 67000 个值的列,并且在整个过程中重复了 80 多个相同的值。
如:
Ailurus
Harpia
Alligator
Branta
Araucaria
Branta
Alligator
我想在它旁边创建一个列,它接受每个单独的类型并为其分配一个数值。 比如
1
2
3
4
5
4
3
目前我唯一的选择是通过
手动完成data['animal'].replace(['harpia'], ['2'],inplace=True)
但是这不可行,因为这需要时间
你可以试试
df['num_A']=df.A.astype('category').cat.codes
或
df['num_A']=df.A.factorize()[0]
或
df.groupby('A').ngroup()