Python处理表格dataframe时实现行转列和列转行的方法

 更新时间:2025年12月22日 09:40:29   作者:LucaTech  
在python中,我们可以使用pandas库来处理表格数据,而pandas库中的核心数据类型就是DataFrame,在处理DataFrame数据时,有时候需要将行转换为列,或者将列转换为行,所以本文给大家介绍了如何使用pandas库实现行转列和列转行,需要的朋友可以参考下

python处理表格dataframe-如何实现行转列和列转行?

在python中,我们可以使用pandas库来处理表格数据,而pandas库中的核心数据类型就是DataFrame。在处理DataFrame数据时,有时候需要将行转换为列,或者将列转换为行。下面是一个简单的例子,展示如何使用pandas库实现行转列和列转行。

创建表

import pandas as pd

# 创建一个DataFrame
df = pd.DataFrame({
    'name': ['John', 'Mary', 'Peter'],
    'math': [80, 90, 70],
    'english': [70, 85, 90],
    'science': [75, 95, 80]
})
    name  math  english  science
0   John    80       70       75
1   Mary    90       85       95
2  Peter    70       90       80

行转列

# 使用melt函数将行转列
df_melt = pd.melt(df, id_vars=['name'], var_name='subject', value_name='score')

print(df_pivot)

在上面的代码中,我们首先创建了一个包含学生成绩的DataFrame,然后使用melt函数将每个学生的科目成绩转换为一列,最终输出结果如下:

    name  subject  score
0   John     math     80
1   Mary     math     90
2  Peter     math     70
3   John  english     70
4   Mary  english     85
5  Peter  english     90
6   John  science     75
7   Mary  science     95
8  Peter  science     80

列转行

列转行通常也被称为数据堆叠,可以使用pandas库中的pivot函数来实现。下面是一个示例代码:

# 使用pivot函数再将行转列
df_pivot = df_meld.pivot(index='name', columns='subject', values='score')
print(df_pivot)
subject  english  math  science
name                           
John          70    80       75
Mary          85    90       95
Peter         90    70       80

到此这篇关于Python处理表格dataframe时实现行转列和列转行的方法的文章就介绍到这了,更多相关Python dataframe行转列和列转行内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 谈谈python垃圾回收机制

    谈谈python垃圾回收机制

    这篇文章主要介绍了python垃圾回收机制的相关资料,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-09-09
  • python holidays获取中国节日的示例

    python holidays获取中国节日的示例

    在Python中,holidays库是一个流行的库,用于处理各种国家和地区的公共假期,这篇文章主要介绍了python holidays获取中国节日,需要的朋友可以参考下
    2024-06-06
  • Python中的随机函数random详解

    Python中的随机函数random详解

    大家好,本篇文章主要讲的是Python中的随机函数random详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • 浅析对torch.unsqueeze()函数理解

    浅析对torch.unsqueeze()函数理解

    torch.unsqueeze()函数起到升维的作用,dim等于几表示在第几维度加一,这篇文章主要介绍了对torch.unsqueeze()函数理解深度解析,感兴趣的朋友跟随小编一起看看吧
    2024-06-06
  • Python基础之getpass模块详细介绍

    Python基础之getpass模块详细介绍

    最近在看Python标准库官方文档的时候偶然发现了这个模块。仔细一看内容挺少的,只有两个主要api,就花了点时间阅读了一下源码,感觉挺实用的,在这安利给大家。下面这篇文章主要给大家介绍了关于Python基础之getpass模块的相关资料,需要的朋友可以参考下。
    2017-08-08
  • 使用python搭建服务器并实现Android端与之通信的方法

    使用python搭建服务器并实现Android端与之通信的方法

    今天小编就为大家分享一篇使用python搭建服务器并实现Android端与之通信的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • 详解python和matlab的优势与区别

    详解python和matlab的优势与区别

    在本文中小编给大家分享的是关于python和matlab的优势与区别的知识点以及实例代码,需要的朋友们参考学习下。
    2019-06-06
  • python中的plt.cm.Paired用法说明

    python中的plt.cm.Paired用法说明

    这篇文章主要介绍了python中plt.cm.Paired的用法说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • python 获取计算机的网卡信息

    python 获取计算机的网卡信息

    这篇文章主要介绍了python 获取计算机的网卡信息的方法,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
    2021-02-02
  • python多进程读图提取特征存npy

    python多进程读图提取特征存npy

    这篇文章主要为大家详细介绍了python多进程读图提取特征存npy,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-05-05

最新评论