【问题标题】:Slice and concatenate columns without using numpy.r_在不使用 numpy.r_ 的情况下切片和连接列
【发布时间】:2021-07-02 19:53:04
【问题描述】:

我想为多列中的每个项目迭代我的函数,其中有两列我不想选择,即df.iloc[:,58:72]df.iloc[:,74:92]。我知道numpy.r_ 有效,但有没有其他方法可以获得相同的结果?

我的代码:

char = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\\"
def remove_char(x):
    try:
        return float(x.strip(char))
    except:
        return None
for columnName in df.iloc[:,np.r_[58:72,74:92]]:
    df[columnName] = list(map(remove_char, df[columnName]))

【问题讨论】:

  • 使用 pd.concat,pd.concat([df.iloc[:, 58:72 ], df.iloc[:, 74:92]], axis=1)
  • df.iloc[:,np.r_[58:72,74:92]] = df.iloc[:,np.r_[58:72,74:92]].applymap(remove_char).

标签: python pandas dataframe numpy iteration


【解决方案1】:

您可以改用pd.concat

pd.concat([df.iloc[:, 58:72 ], df.iloc[:, 74:92]], axis=1)

【讨论】:

    猜你喜欢
    • 2015-03-08
    • 1970-01-01
    • 2022-07-01
    • 2020-04-22
    • 2016-10-11
    • 2015-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多