【发布时间】:2021-05-16 10:33:27
【问题描述】:
我想使用 iloc(而不是 loc)+基于数据框列之一的某些条件对我的数据框进行切片,并为该切片中的所有项目分配一个值(这实际上是主数据框的子集)。
我的简化尝试:
df.iloc[:, 1:21][df['column1'] == 'some_value'] = 1
这是为了获取数据帧的一部分:
- 所有行;
- 第 2 至 20 列;
然后再切片:
- 仅限 column1 = some_value 的行。
切片工作正常,但等于 1 不起作用。 df 没有任何变化,我收到此警告
试图在 DataFrame 的切片副本上设置一个值。尝试改用 .loc[row_indexer,col_indexer] = value
如果可能的话,我真的需要使用 iloc 而不是 loc。感觉应该有办法做到这一点?
【问题讨论】:
标签: pandas conditional-statements slice