1

假设我有一个这样的数据框:

Fil1 Fil2                    A    B   C   D 
a    crossdev radio com      Act  1   23  324
b    crossdev webapp radio   Act  4   45  343
a    Streaming webapp radio  Act  3   23  566
a    crossdev com            Act  1   12  746

实际文件中的 Fil1 列是我正在过滤的非常长的名称,但在这里我将其引用为“a”。

我使用的代码是——

df.loc[(df['Fil1'] == 'a') & (df['Fil2'].str.contains('com')) , 'C'] = 0
df.loc[(df['Fil1'] == 'a') & (df['Fil2'].str.contains('com')) , 'D'] = 0
df.loc[(df['Fil1'] == 'a') & (df['Fil2'].str.contains('com')) , 'A'] = 'Fail'

将此df输出到excel。

所需的 Excel 输出:

Fil1 Fil2                    A     B   C   D 
a    crossdev radio com      Fail  1   0   0
b    crossdev webapp radio   Act   4   45  343
a    Streaming webapp radio  Act   3   23  566
a    crossdev com            Fail  1   0   0

我的代码没有给我任何错误,但它甚至没有给我想要的结果。还有其他解决方法吗?

4

1 回答 1

0

代码正在运行!它没有错误。
我在这里称为“a”的值是导致问题的真实数据集中的一团糟。

于 2021-06-25T14:10:37.670 回答