Python中如何高效地实现列转行操作

数据源大致是这样的:

Python如何快速实现分列转到行

基于此,我动起了一个念头:看看如何用Python快速实现这个操作。

数据源已经构造好,咱们开干!

import pandas as pd

df = pd.read_excel("分列转到行.xlsx",header=None)
df.columns = ["年级","姓名"]
df

结果如下:

Python如何快速实现分列转到行

整个代码很简单,不信你看!

df["新列"] = df["姓名"].str.split(";")
df["新列"]

结果如下:

Python如何快速实现分列转到行

最后再上一个爆炸函数,直接拿下!

df1 = df.explode("新列")
df1

部分截图如下:

Python如何快速实现分列转到行

对于上述得到的df1,你又该如何还原这份数据呢?

def func(df):
    return ','.join(df.values) #这里改为什么分隔符,随你自己!
df2 = df1.groupby(by='年级').agg(func).reset_index()
df2

结果如下:

Python如何快速实现分列转到行

以上就是Python中如何高效地实现列转行操作的详细内容,更多请关注其它相关文章!