首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在isin()中处理空字符串的Pandaic方法

在isin()中处理空字符串的Pandaic方法
EN

Stack Overflow用户
提问于 2018-06-10 08:24:49
回答 1查看 186关注 0票数 4

当只需要两个'b‘和'c’时,下面的最后一个print语句显示了三个项目。在结果中不包含空字符串的方法是什么?

代码语言:javascript
复制
print(sys.version)
print(np.__version__)
print(pd.__version__)


3.6.4
1.14.2
0.22.0

代码语言:javascript
复制
import string

ds1 = pd.Series(list(string.ascii_lowercase[:3]), (range(3)))
ds2 = pd.Series(list(string.ascii_lowercase[1:4]), (range(1,4))) 

ds1[0]=''
ds2[3]=''

print(ds1)
0
1    b
2    c
dtype: object

print(ds2)
1    b
2    c
3
dtype: object

代码语言:javascript
复制
print(ds1[ds1.isin(ds2)]) # returns three items, only want 'b' and 'c'

0
1    b
2    c
dtype: object

我尝试使用isnull(),但无济于事。

代码语言:javascript
复制
print(ds1.isnull())

输出:

代码语言:javascript
复制
0    False
1    False
2    False
dtype: bool
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-10 08:27:15

空字符串并不对应于NaN、None等,只需像往常一样过滤掉它们即可。

代码语言:javascript
复制
ds1[ds1.isin(filter(None, ds2))]

1    b
2    c
dtype: object
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50779612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档