【发布时间】:2022-01-22 04:47:24
【问题描述】:
我在数据帧df1 上循环查找maximum order,然后我想将discount_first 分配给最大订单。
对于一个数据集,一切正常
new_rate_1 = []
for value in df1["maximum_order"]:
new_val = df[df["New_Order_Lines"]==value]["discount_first"]
new_val = new_val.tolist()[0]
new_rate_1.append(new_val)
new_rate_1
[-1.3,
-1.3,
0.35,
0.8,
0.75,
0.55,
0.8,
0.85,
0.4,
0.75,
0.85,
0.85,
0.55,
0.45,
0.8,
0.65,
0.55,
0.85,
0.35,
0.85,
0.9,
0.5,
0.55,
-0.6,
0.85,
0.75,
0.35,
0.15,
0.55,
0.7,
0.8,
0.85,
0.75,
0.65,
0.75,
0.75,
0.35,
0.85,
0.4,
...
....
]
对于其他数据集我开始出错?
IndexError: list index out of range
如果我不在外观中索引列表,我不会收到错误,输出看起来像这样
[[0.8],
[0.8],
[0.55],
[0.55],
[0.55],
[0.85],
[0.55],
[0.85],
[0.85],
[0.65],
[0.65],
[0.75],
[0.7]
.....
- 有什么建议/建议如何摆脱行为?
提前致谢
【问题讨论】:
-
导致错误的数据列表显然在某处包含一个空行。仔细检查您的数据。