按多个字符串选择列

2024-09-28 22:33:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着用特定的部分字符串选择几行数据帧。你知道吗

下面的数据帧是原始示例数据:

CODE        DATA 
AA2016      47518  
BB2016      47518  
CC2014      47518  
AA2014      47518  
EE2015      47518  
BB2015      47518  
FF2016      47518  
AA2013      47518  

我想按Code列中的前两个单词来选择行。你知道吗

例如,我想在“Code”列中选择包含“AA”、“BB”、“CC”的行。你知道吗

结果应表示为:

enter image description here

我使用这样的代码:

Select_list = ["AA","BB", "CC"]

df = pd.read_clipboard()
df1 = df[df.CODE.str[0:2] isin Select_list]

但是会出现类似SyntaxError: invalid syntax的错误


Tags: 数据字符串示例dfdatacodeselectlist
1条回答
网友
1楼 · 发布于 2024-09-28 22:33:17

正如@ayhan在评论中指出的,您可以使用df[df.CODE.str[0:2].isin(Select_list)]。你知道吗

或者,请注意,可以通过^{}使用正则表达式:

In [6]: df = pd.DataFrame({'CODE': ['AA2016', 'BB2015', 'AB2015']})

In [7]: df.CODE.str.contains(r'AA.*|BB.*|CC.*')
Out[7]: 
0     True
1     True
2    False
Name: CODE, dtype: bool

(不过,对于这种特定的模式,切片可能更简单。)

相关问题 更多 >