python - 数据帧子集中的字符串索引 - 熊猫
问题描述
我正在尝试根据列表中的值创建熊猫数据框的子集。但是,我需要包含字符串索引。我将用一个例子来演示:
这是我的数据框:
df = pd.DataFrame({'A' : ['1-2', '2', '3', '3-8', '4']})
这是它的样子:
A
0 1-2
1 2
2 3
3 3-8
4 4
我有一个值列表,我想用来从我的数据框中选择行。
list1 = ['2', '3']
我可以使用 .isin() 函数使用我的列表项从我的数据框中选择行。
subset = df[df['A'].isin(list1)]
print(subset)
A
1 2
2 3
但是,我想要任何包含“2”或“3”的值。这是我想要的输出:
A
1 1-2
2 2
3 3
4 3-8
我可以在 .isin() 函数中使用字符串索引吗?我正在努力想出另一种解决方法。
解决方案
检查str.split
和isin
_any
Newdf=df[df.A.str.split('-',expand=True).isin(['2','3']).any(1)].copy()
Out[189]:
A
0 1-2
1 2
2 3
3 3-8
推荐阅读
- android - 让 Kotlin Serializer 与 Retrofit 一起工作
- c - 关于缺少原型错误的说明
- javascript - 我可以使用 Tensorflow.js 进行无监督学习吗?
- javascript - 在 youtube iframe 中隐藏相关视频
- php - 尝试连接到 Azure SQL 服务器时,我得到一个 PDOException 找不到驱动程序
- html - 如何控制 div 和 svg 的位置
- wpf - XAML WPF 中 {x:Static} 和 {StaticResource} 之间的区别
- css - 从另一个元素引用元素元素选择器
- dax - 月切片器和筛选器在滚动数据 Power BI 上无法正常工作
- java - java.net.HttpClient 状态为 CLOSE_WAIT 的连接泄漏