Python 删除熊猫中的筛选行
我需要过滤电话号码并删除过滤后的电话号码。我无法将这些条件组合成一个过滤器,所以我制作了两个过滤器。当我通过1过滤器时,一切正常。但是当我通过第二个过滤器时,我得到了一个错误。但无论如何,我得到了一个经过适当过滤的数据帧 我需要改变什么,去没有任何错误Python 删除熊猫中的筛选行,python,pandas,Python,Pandas,我需要过滤电话号码并删除过滤后的电话号码。我无法将这些条件组合成一个过滤器,所以我制作了两个过滤器。当我通过1过滤器时,一切正常。但是当我通过第二个过滤器时,我得到了一个错误。但无论如何,我得到了一个经过适当过滤的数据帧 我需要改变什么,去没有任何错误 将熊猫作为pd导入 df=pd.DataFrame({“电话”:['+77013655566'、'8701434366'、'7014324366'、'11111'、'999999'、'43434343'、'+77015452313'、'70123
将熊猫作为pd导入
df=pd.DataFrame({“电话”:['+77013655566'、'8701434366'、'7014324366'、'11111'、'999999'、'43434343'、'+77015452313'、'7012334212'、'87010956612'、'7777777'、'888888'])
打印(df)
电话
0 +77013655566
1 87014324366
2 7014324366
3 11111
4 999999
5 43434343
6 +77015452313
7 7012334212
8 87010956612
9 7777777
10 8888888
电话过滤器=((df['phone'].map(str)='88888888')
(df['Phone'].map(str)='777'))
phone_filter2=((df['phone'].map(str.str[0]!='8')&
(df['Phone'].map(str).str[0]!='7')&
(df['Phone'].map(str.str[0]!='+'))
drop(df[phone\u filter].index,inplace=True)
drop(df[phone\u filter2].index,inplace=True)
:1:UserWarning:布尔系列键将重新编制索引以匹配数据帧索引。
预期产出:
打印(df)
电话
0 +77013655566
1 87014324366
2 7014324366
6 +77015452313
7 7012334212
8 87010956612
使用:
输出:
Phone
0 +77013655566
1 87014324366
2 7014324366
6 +77015452313
7 7012334212
8 87010956612
预期产量是多少?请注意,第一个筛选器无效,因为它将一个字符与一个长度超过一个字符的字符串进行比较,并将我的问题更新为预期的输出。实际上,我用这段代码得到了预期的输出。问题是,我犯了一个错误。你能把问题再读一遍吗。我的问题中有一个错误。你想删除所有以“8”、“7”或“+”开头的数字吗?我想删除所有不以“8”、“7”或“+”开头的数字,还想删除特定的数字,如:“88888888”、“77777”。
Phone
0 +77013655566
1 87014324366
2 7014324366
6 +77015452313
7 7012334212
8 87010956612