bla*_*lah 3 python nested tuples list pandas
我想转换我的元组列表,以便每个元组的第一个元素代表 2 个不同的列。每个元组的第二个元素应表示与 pandas df 中的列相对应的值。
我当前的元组列表:
list_tuples = [('G', 9.8), ('B', 4.2), ('G', 9.6), ('B', 2.3), ('G',7.6), ('B', 3.1)]
Run Code Online (Sandbox Code Playgroud)
期望的输出:
G B
9.8 4.2
9.6 2.3
7.6 3.1
Run Code Online (Sandbox Code Playgroud)
我目前拥有的代码没有给出所需的输出:
df = pd.DataFrame(list_tuples, columns=['G', 'B'])
Run Code Online (Sandbox Code Playgroud)
用于defaultdict将元组列表转换为列表字典,然后将其传递给DataFrame构造函数:
from collections import defaultdict
d = defaultdict(list)
for a, b in list_tuples:
d[a].append(b)
df = pd.DataFrame(d)
print (df)
G B
0 9.8 4.2
1 9.6 2.3
2 7.6 3.1
Run Code Online (Sandbox Code Playgroud)