【问题标题】:How To create Multiple Columns From Values of The Same Column?如何从同一列的值创建多个列?
【发布时间】:2019-08-24 07:59:18
【问题描述】:

我有一个 DataFrame ,并且我想根据同一列的值创建新列,并且在每一列中,我希望这些值是 Plate 重复的总和em> 随着时间的推移。

所以我有这个数据框:

   Val_Tra.Head():

                             Plate                          EURO    
   Timestamp                            
   2013-11-01 00:00:00               NaN                    NaN
   2013-11-01 01:00:00  dcc2f657e897ffef752003469c688381    0.0 
   2013-11-01 02:00:00  a5ac0c2f48ea80707621e530780139ad    6.0 

所以我的 EURO 列看起来像这样:

   Veh_Tra.EURO.value_counts():

   5    1590144
   6     745865
   4     625512
   0     440834
   3     243800
   2      40664
   7      14207
   1       4301 

这是我想要的输出:

                                       Plate               EURO_1    EURO_2    EURO_3    EURO_4    EURO_5    EURO_6   EURO_7    
   Timestamp                            
   2013-11-01 00:00:00               NaN                    NaN      NaN        NaN       NaN        NaN        NaN     NaN
   2013-11-01 01:00:00  dcc2f657e897ffef752003469c688381    1.0      NaN        NaN        NaN       NaN        NaN     NaN 
   2013-11-01 02:00:00  a5ac0c2f48ea80707621e530780139ad    NaN      NaN        1.0        NaN       NaN        NaN     NaN

所以基本上,我想要的是每次 Plate 值在特定类型的 Euro 在特定时间。

任何建议都将不胜感激,谢谢。

【问题讨论】:

    标签: python-3.x pandas dataframe merge multiple-columns


    【解决方案1】:

    这更像是get_dummies 问题

    s=df.dropna().EURO.astype(int).astype(str).str.get_dummies().add_prefix('EURO')
    df=pd.concat([df,s],axis=1,sort=True)
    df
    Out[259]: 
                                                   Plate  EURO  EURO0  EURO6
    2013-11-0100:00:00                               NaN   NaN    NaN    NaN
    2013-11-0101:00:00  dcc2f657e897ffef752003469c688381   0.0    1.0    0.0
    2013-11-0102:00:00  a5ac0c2f48ea80707621e530780139ad   6.0    0.0    1.0
    

    【讨论】:

      猜你喜欢
      • 2022-01-05
      • 2017-03-30
      • 2022-12-09
      • 1970-01-01
      • 2011-09-21
      • 1970-01-01
      • 2022-01-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多