我有一个dataframe,有两列,分别为gene_hgnc_id和embedding,现在我还有一个一维列表lis,里面的元素为gene_hgnc_id,如何将lis根据dataframe替换成embedding
时间: 2024-05-10 22:15:55 浏览: 59
你可以使用pandas库的merge函数,将两个DataFrame合并,然后根据lis中的gene_hgnc_id筛选embedding列,得到你想要的结果。
具体实现步骤如下:
1. 将lis转换成DataFrame格式
```python
import pandas as pd
lis_df = pd.DataFrame({'gene_hgnc_id': lis})
```
2. 使用merge函数将两个DataFrame合并
```python
merged_df = pd.merge(df, lis_df, on='gene_hgnc_id', how='inner')
```
这里的on参数表示根据gene_hgnc_id列进行合并,how参数表示使用内连接方式。
3. 筛选embedding列
```python
result = merged_df['embedding']
```
最终得到的result就是根据lis替换成的embedding列表。
阅读全文