【问题标题】:Split ("extract") Columns using Panda [duplicate]使用 Panda 拆分(“提取”)列 [重复]
【发布时间】:2018-12-05 02:25:24
【问题描述】:

我目前有一个名为 Country 的列,其值为 USA, Canada, Japan。例如:

Country
-------
Japan
Japan
USA
....
Canada

我想将值拆分(“提取”)为三个单独的列(Country_USACountry_CanadaCountry_Japan),基本上,如果与Country 列中的原始值。例如:

Country        -->    Country_Japan    Country_USA    Country_Canada
-------               -------------    -----------    ---------------
Japan                        1              0                0
USA                          0              1                0
Japan                        1              0                0
....

有没有使用 Panda / Python 3.x 的简单(非繁琐)方法来做到这一点?谢谢!

【问题讨论】:

  • 看看用pd.get_dummies

标签: python python-3.x pandas


【解决方案1】:

joinget_dummiesadd_prefix 一起使用:

print(df.join(df['Country'].str.get_dummies().add_prefix('Country_')))

演示:

df=pd.DataFrame({'Country':['Japan','USA','Japan','Canada']})
print(df.join(df['Country'].str.get_dummies().add_prefix('Country_')))

输出:

  Country  Country_Canada  Country_Japan  Country_USA
0   Japan               0              1            0
1     USA               0              0            1
2   Japan               0              1            0
3  Canada               1              0            0

更好的版本,感谢 Scott:

print(df.join(pd.get_dummies(df)))

输出:

  Country  Country_Canada  Country_Japan  Country_USA
0   Japan               0              1            0
1     USA               0              0            1
2   Japan               0              1            0
3  Canada               1              0            0

Scott 的另一个好版本:

print(df.assign(**pd.get_dummies(df)))

输出:

  Country  Country_Canada  Country_Japan  Country_USA
0   Japan               0              1            0
1     USA               0              0            1
2   Japan               0              1            0
3  Canada               1              0            0

【讨论】:

  • 正是我的想法.. +1
  • print(df.join(pd.get_dummies(df)))
  • 这是另一个使用字典解包的技巧...print(df.assign(**pd.get_dummies(df)))
  • @ScottBoston 哇...你是熊猫方面的专家!!!
  • @ScottBoston,你真的是熊猫的专家,脱帽致敬。
猜你喜欢
  • 1970-01-01
  • 2021-08-16
  • 2018-10-23
  • 1970-01-01
  • 2020-05-05
  • 1970-01-01
  • 2013-05-31
  • 2017-12-16
  • 2015-11-12
相关资源
最近更新 更多