gpt4 book ai didi

python - 从数据帧构造多索引数据帧

转载 作者:行者123 更新时间:2023-12-01 01:44:56 25 4
gpt4 key购买 nike

假设x = pd.DataFrame({'a': range(0,3), 'b': range(1, 4)})y = pd.DataFrame({'a': range(-1,2), 'b': range(2, 5)}) 。我想构建一个数据框 t = pd.DataFrame('x': x, 'y': y) 。预期结果是一个多索引数据帧。但是,错误消息告诉我 ValueError: If using all scalar values, you must pass an index .

import panda as pd
x = pd.DataFrame({'a': range(0,3), 'b': range(1, 4)})
y = pd.DataFrame({'a': range(-1,2), 'b': range(2, 5)})
t = pd.DataFrame('x': x, 'y': y)

最佳答案

我相信需要concat按索引(默认 axis=0 被省略)用于索引中的 MultiIndex:

t = pd.concat({'x': x, 'y': y})

或者:

t = pd.concat([x, y], keys=('x','y'))
<小时/>
print (t)

a b
x 0 0 1
1 1 2
2 2 3
y 0 -1 2
1 0 3
2 1 4

或者按列按 axis=1 获取列中的 MultiIndex:

t = pd.concat({'x': x, 'y': y}, axis=1)
t = pd.concat([x, y], keys=('x','y'), axis=1)
<小时/>
print (t)
x y
a b a b
0 0 1 -1 2
1 1 2 0 3
2 2 3 1 4

关于python - 从数据帧构造多索引数据帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51477872/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com