【问题标题】:Extending the column name in pandas DataFrame扩展 pandas DataFrame 中的列名
【发布时间】:2017-11-28 03:05:36
【问题描述】:

我有一个包含 34 行和 10 列的数据框。我将数据框称为“comp”,现在我做了“invcomp = 1/comp”,所以值发生了变化,但列名将相同。我想替换或重命名我的列名,假设我的第一列的早期名称是“comp”中的“Cbm_m”,现在我想将它转换为“invcomp”中的“Cbm_m_inv”。在 last 中扩展或添加一个额外的术语。

【问题讨论】:

标签: python pandas scikit-learn sklearn-pandas


【解决方案1】:

使用'add_suffix':

invcomp = invcomp.add_suffix('_inv')

设置:

invcomp = pd.DataFrame(pd.np.random.rand(5,5), columns=list('ABCDE'))
invcomp = invcomp.add_suffix('_inv')

输出:

      A_inv     B_inv     C_inv     D_inv     E_inv
0  0.111604  0.016181  0.384071  0.608118  0.944439
1  0.523085  0.139200  0.495815  0.007926  0.183498
2  0.090169  0.357117  0.381938  0.222261  0.788706
3  0.802219  0.002049  0.173157  0.716345  0.182829
4  0.260781  0.376730  0.646595  0.324361  0.345097

【讨论】:

  • 谢谢,我在过去 4 小时内一直在尝试解决这个问题。万分感谢。我可以有你的电子邮件或不使用你的社交媒体方式,所以我可以直接向你询问我的进一步疑问。如果你没事的话。总的来说非常感谢
  • 你能再帮帮我吗,我现在有一个 120 列的数据框,我想将它们相乘。就像生成二维特征一样,
  • 请在 Stack Overflow 上的一个新问题下发布此内容。而且,我或其他人会尽我们所能帮助您。谢谢你。请记住,我们是自愿贡献我们的时间的,因此请发布一个最低限度的声明来解决您输入数据和预期输出的问题。
  • @chrisb 你好,我正在使用这个...: df = df_base.copy() ...: for pair in combination(df.columns, 3): ...: new_col = '* '.join(pair) ...: df[new_col] = df[pair[0]] * df[pair[1]]*df[pair[2]] 我试图将 204 列的数据帧相乘,这是假设生成 1394204 列。但是在 2 小时内它只生成了 300420。可以告诉我如何让它更快。
猜你喜欢
  • 1970-01-01
  • 2018-07-19
  • 2021-05-07
  • 2014-10-10
  • 1970-01-01
  • 2012-10-05
  • 2021-04-24
  • 2020-03-30
  • 2019-08-13
相关资源
最近更新 更多