我把两个数据透视表contact在一起后,想要删掉单元格值为“分配”的行

我把两个数据透视表contact在一起后,想要删掉单元格值为“分配”的行。然后报错

2= pd.read_excel("A.xlsx",sheet_name='AMANDA ')
new_2=2[2.iloc[:,10].notna()]
3= pd.read_excel("S.xlsx",sheet_name='DITl')
new_3=3[3.iloc[:,10].notna()]
df_concat=pd.concat([new_2,new_3])
for j in range(0,len(df_concat.index)):
if df_concat.iat[j, 10] ==("分配") :

    df = df_concat.drop(index=[j])

raise KeyError(f"{labels} not found in axis")

KeyError: '[0] not found in axis'

我发现运行到for j in range(0,len(df_concat.index)):应该都是对的,但是drop就出错了。

可以使用df=df[df列名]!='分配']来去除某列含分配的行。示例:

import pandas as pd
df=pd.read_excel('t220601.xlsx',header=None,names=list('ABCDE'))
print(df)
"""
A   B     C     D   E
0      john  12  12.3  15.2 NaN
1    amanda  10   8.5  11.0 NaN
2  cathrine  14   NaN   2.5 NaN
3       bob  13   2.0   6.0 NaN
4      tony  11   NaN  15.0 NaN

"""
df=df.dropna(subset=['C'],axis=0,how='any')
df=df[df['A']!='amanda']
print(df)
"""
 A   B     C     D   E
0  john  12  12.3  15.2 NaN
3   bob  13   2.0   6.0 NaN
"""

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632