【发布时间】:2018-12-14 03:27:31
【问题描述】:
我的代码使用正则表达式查找某个列字符串的最大行数,然后删除这些行数。
df["MaxConfAll"] = df.filter(regex=("MaxConfDays.*")).max(axis=1)
drop_cols = list(df3.filter(regex=("MaxConfDays.*")))
df3 = df3.drop(drop_cols, axis=1)
成功找到并删除如下列: ('MaxConfDays', 1) ('MaxConfDays', 2) ('MaxConfDays', 3)...('MaxConfDays', n)
但是,如果我尝试引用一个特定的,那么它会给我一个 KeyError:
df["('MaxConfDays', 3)"] 返回一个KeyError:
KeyError: "('MaxConfDays', 3)"
数据框是:
('MaxConfDays', 1) ('MaxConfDays', 2) ('MaxConfDays', 3)
2 0 NaN
0 NaN NaN
3 NaN NaN
0 NaN NaN
33 33 0
【问题讨论】:
-
向我们展示数据框。
-
df["('MaxConfDays.Name', 3)"] ?????什么是名称?,它是否意味着是一个变量?如果是这样,请删除 '
-
这只是一个例子。将其替换为实际名称。添加了数据框。
-
你试过没有多余的引号吗?
df['MaxConfDays', 3]?或df.loc[3, 'MaxConfDays']? -
你能创建一个包含输入代码和预期输出的完整示例吗?
标签: python python-3.x pandas