假设我有一个looks like this的Pandas 数据帧:

   Name                   Values
0  John   [[15, 200], [20, 300]]
1   Sam  [[16, 100], [20, 1000]]

其中,"价值"列表示财富随时间的分布.

I want my dataframe to look like this:

   Name  Age  Wealth
0  John   15     200
1  John   20     300
2   Sam   16     100
3   Sam   20    1000

所以我可以利用Pandas 的内在功能来研究我的数据.

我可能可以通过迭代原始"values"列中的每对值来创建我喜欢的新数据帧,但这可能不是很有效,因为我有很多数据,我不会利用pandas的功能.

有办法做到这一点吗?

推荐答案

使用df.explodepd.concat:

In [253]: df = df.explode('Values')
In [261]: res = pd.concat([df['Name'], pd.DataFrame(df['Values'].tolist(), columns=['Age', 'Wealth'], index=df.index)], axis=1)

In [262]: res
Out[262]: 
   Name  Age  Wealth
0  John   15     200
0  John   20     300
1   Sam   16     100
1   Sam   20    1000

Python相关问答推荐

根据另一列中的nan重置值后重新加权Pandas列

如何在类和classy-fastapi -fastapi- followup中使用FastAPI创建路由

对所有子图应用相同的轴格式

如何在Polars中从列表中的所有 struct 中 Select 字段?

与命令行相比,相同的Python代码在Companyter Notebook中运行速度慢20倍

为什么numpy. vectorize调用vectorized函数的次数比vector中的元素要多?

为什么\b在这个正则表达式中不解释为反斜杠

替换现有列名中的字符,而不创建新列

mdates定位器在图表中显示不存在的时间间隔

一个telegram 机器人应该发送一个测验如何做?""

504未连接IB API TWS错误—即使API连接显示已接受''

如何训练每一个pandaprame行的线性回归并生成斜率

Python如何导入类的实例

如何为需要初始化的具体类实现依赖反转和接口分离?

如果不使用. to_list()[0],我如何从一个pandas DataFrame中获取一个值?

将字节序列解码为Unicode字符串

Pythonquests.get(Url)返回Colab中的空内容

Django抛出重复的键值违反唯一约束错误

如何关联来自两个Pandas DataFrame列的列表项?

Sknowled线性回归()不需要迭代和学习率作为参数