用python 实现 查询一个dataframe 中 data['name'] 的数据是否包含有列表list中的内容,比如list为['A','B','C','D'],取出符合的data中的内容,生成返回一个新的dataframe,如data2
时间: 2023-12-09 22:02:36 浏览: 82
可以使用 `isin` 函数和布尔索引来实现这个功能,示例如下:
```python
import pandas as pd
data = pd.DataFrame({'name': ['A', 'B', 'C', 'D', 'E'], 'value': [1, 2, 3, 4, 5]})
lst = ['A', 'B', 'C', 'D']
result = data[data['name'].isin(lst)]
print(result)
```
运行结果如下:
```
name value
0 A 1
1 B 2
2 C 3
3 D 4
```
其中,`data['name'].isin(lst)` 会生成一个布尔类型的 Series,表示每个元素是否在列表中出现过;`data[data['name'].isin(lst)]` 利用这个布尔类型的 Series 作为索引,从原来的 DataFrame 中取出符合条件的行,生成一个新的 DataFrame。
相关问题
用python 实现 查询一个dataframe 中 data['name'] 的数据是否包含有列表list中的内容,比如list为['A','B','C','D']
可以使用 `isin` 函数来实现这个功能,示例如下:
```python
import pandas as pd
data = pd.DataFrame({'name': ['A', 'B', 'C', 'D', 'E']})
lst = ['A', 'B', 'C', 'D']
result = data['name'].isin(lst)
print(result)
```
运行结果如下:
```
0 True
1 True
2 True
3 True
4 False
Name: name, dtype: bool
```
其中 `isin` 函数会返回一个布尔类型的 Series,表示每个元素是否在列表中出现过。在示例中,只有前四个元素出现在列表中,因此最后一个元素的结果为 False。
用python 实现将一个dataframe,如data['name']的数据转成一个list,
可以使用 Pandas 中的 `tolist()` 方法将 DataFrame 的某一列转换为 list。示例代码如下:
```python
import pandas as pd
data = pd.DataFrame({'name': ['A', 'B', 'C', 'D', 'E'], 'value': [1, 2, 3, 4, 5]})
name_list = data['name'].tolist()
print(name_list)
```
运行结果如下:
```
['A', 'B', 'C', 'D', 'E']
```
其中,`data['name']` 取出 DataFrame 中的某一列,然后使用 `tolist()` 方法将其转换为 list。
阅读全文