熊猫加入特定列的索引

超创

我有三个看起来像这样的列表:

l1 = ["a", "b" , "c", "d", "e", "f", "g"]

l2 = ["a", "d", "f"]

l3 = ["b", "g"]

我想得到一个如下所示的数据框:

| l1 | l2   | l3   |
|----|------|------|
| a  | a    | None |
| b  | None | b    |
| c  | None | None |
| d  | d    | None |
| e  | None | None |
| f  | f    | None |
| g  | None | g    |

我曾尝试使用join/merge操作,但无法弄清楚。

我怎么能做到这一点?

纳撒尼尔

您可以使用列表推导式执行此操作:

import pandas as pd
import numpy as np

a = [i if i in l2 else np.nan for i in l1]
b = [i if i in l3 else np.nan for i in l1]

df = pd.DataFrame({'l1': l1, 'l2': a, 'l3': b})
print(df)

输出:

  l1   l2   l3
0  a    a  NaN
1  b  NaN    b
2  c  NaN  NaN
3  d    d  NaN
4  e  NaN  NaN
5  f    f  NaN
6  g  NaN    g

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章