python - 熊猫:使用一系列字符串从数据框中选择行
问题描述
我有一个系列中的姓氏列表,s:
print(s)
Order
1 Surname01
2 Surname02
3 Surname03
4 Surname04
5 Surname05
...
496 Surname06
497 Surname07
498 Surname08
499 Surname09
500 Surname10
我在 Dataframe df 中列出了姓名、地址、电话号码等:
Unnamed: 0 Unnamed: 0.1 ... Phone Unnamed: 7
Last Name ...
Surname01 0 NaN ... NaN NaN
Surname02 1 NaN ... NaN NaN
Surname11 2 NaN ... NaN NaN
Surname12 3 NaN ... (123) 456-7890 (123) 456-7890
Surname05 4 NaN ... (123) 456-7890 (123) 456-7890
... ... ... ... ... ...
Surname13 94 NaN ... (123) 456-7890 (123) 456-7890
Surname14 95 NaN ... (123) 456-7890 (123) 456-7890
Surname15 96 NaN ... NaN NaN
Surname16 97 NaN ... NaN NaN
Surname17 98 NaN ... NaN NaN
我想从 df 创建一个新表,其中只有 s 中的姓氏。我已经阅读了很多页,但无法弄清楚这一点。这就是我所在的位置:
df = df.loc[s]
但我得到 KeyError: 'Last Name'
解决方案
尝试df.loc[df.index.isin(s), :]
例子
s = pd.Series(['a', 'b', 'c', 'd'])
df = pd.DataFrame(index=['a', 'f', 'd'],
data={'col1': [10, 11, 12], 'col2': [1, 2, 3]})
df.loc[df.index.isin(s), :]
col1 col2
a 10 1
d 12 3
推荐阅读
- swift - 如何创建基于 Date() 的倒计时计时器 - SwiftUI
- django - django 更新表单并非所有字段都使用现有数据自动填充
- javascript - Chai 测试返回 Uncaught TypeError: Cannot read property 'have' of undefined
- javascript - 向 Tinymce 对象添加元素
- entity-framework-core - FOREIGN KEY 约束 可能导致循环或多路径
- python-3.x - 为什么 NMSboxes 不消除多个边界框?
- firebase - 如何从当前用户的firestore中获取数据?
- html - CSS Normalize:粗体与粗体?
- python - 尝试使用 Python 在 AWS 中创建存储桶时访问被拒绝
- python - 如何使用pycurl python3检索curl代码