【问题标题】:Adding a column to panda dataframe向熊猫数据框添加一列
【发布时间】:2021-06-11 17:25:19
【问题描述】:

我已经尝试了几个小时来找到一种方法来复制列 n 次并将它们添加到 Dataframe 但运气不佳。请帮忙!

当前数据框:

    0
0   2
1   4
2   5
3   6
4   9

输出:

    0  1 2 ... 99
0   2  2 2     2
1   4  4 4     4 
2   5  5 5     5
3   6  6 6     6
4   9  9 9     9

【问题讨论】:

  • pd.concat([df]*100, axis = 'columns') 可能吗?对于列名,您可以在连接后传递df.columns = np.arange(0, len(df))

标签: python pandas


【解决方案1】:

可能有几种方法,一种方法是这样的:

df= pd.DataFrame()
    for i in range(5):
        for j in range(0,10):
            df.loc[i,j] = i+j
        
df
     0    1    2    3    4    5     6     7     8     9
0  0.0  1.0  2.0  3.0  4.0  5.0   6.0   7.0   8.0   9.0
1  1.0  2.0  3.0  4.0  5.0  6.0   7.0   8.0   9.0  10.0
2  2.0  3.0  4.0  5.0  6.0  7.0   8.0   9.0  10.0  11.0
3  3.0  4.0  5.0  6.0  7.0  8.0   9.0  10.0  11.0  12.0
4  4.0  5.0  6.0  7.0  8.0  9.0  10.0  11.0  12.0  13.0

【讨论】:

    【解决方案2】:

    正如@sammywemmy 在评论中提到的,您可以使用:-

    df=pd.concat([df]*100, axis = 'columns')
    

    之后重命名列:-

    df.columns=range(0,len(df.columns))
    

    【讨论】:

      【解决方案3】:
      >>> df
         0
      0  2
      1  4
      2  5
      3  6
      4  9
      

      .iloc 是另一种选择

      >>> df.iloc[:, [0] * 10]
         0  0  0  0  0  0  0  0  0  0
      0  2  2  2  2  2  2  2  2  2  2
      1  4  4  4  4  4  4  4  4  4  4
      2  5  5  5  5  5  5  5  5  5  5
      3  6  6  6  6  6  6  6  6  6  6
      4  9  9  9  9  9  9  9  9  9  9
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-06-27
        • 2017-01-14
        • 2022-11-18
        • 1970-01-01
        • 2022-09-24
        • 2017-02-11
        • 1970-01-01
        相关资源
        最近更新 更多