替换由整数、浮点数和分类字符串组成的单个列中的字符串(类别) - 熊猫



我有一个Pandas列,主要包含整数,一些浮点数和一些字符串,如"yes","no"和其他一些字符串。我可以用什么替换这些字符串?由于该列不是完全分类的,因此我无法进行一般的热编码或类似操作。在这种情况下,最佳实践是什么?

更新: 出于某种原因,此列的外观并不明显,因此下面是一个示例:

column_name
1000
45
3.0
yes
no
340.0
p
k
4
.
.
.

数据完全是编造的,我唯一需要知道在列中处理此类字符串的最佳实践是什么。

要映射分类数据,您需要使用

https://pandas.pydata.org/pandas-docs/stable/generated/pandas.get_dummies.html

例:

import pandas as pd
df = pd.DataFrame({'A':[1,2,3,4], 'B': ['a', 'b', 'c', 'd'], 'C': [1,'e', 'f', 3]})
# all strings:
pd.get_dummies(df['B'])
a   b   c   d
0   1   0   0   0
1   0   1   0   0
2   0   0   1   0
3   0   0   0   1
# mixed types:
pd.get_dummies(df['C'])

1   3   e   f
0   1   0   0   0
1   0   0   1   0
2   0   0   0   1
3   0   1   0   0

最新更新