在由整数,浮点数和分类字符串组成的单个列中替换字符串(分类)-Pandas

时间:2018-10-24 19:55:03

标签: python-3.x pandas data-science

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

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

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

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

1 个答案:

答案 0 :(得分:0)

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

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