Python DataFrame一列拆成多列以及一行拆成多行

yipeiwu_com6年前Python基础

摘要

在进行数据分析时,我们经常需要把DataFrame的一列拆成多列或者根据某列把一行拆成多行,这篇文章主要讲解这两个目标的实现。

1.读取数据

2.将City列转成多列(以‘|'为分隔符)

这里使用匿名函数lambda来讲City列拆成两列。

在这里插入图片描述

3.将DataFrame一行拆成多行(以‘|'为分隔符)

方法一:在刚刚得到的DataFrame基础上操作,如下图所以,可以明显看到我们按照City列将DataFrame拆成了多行。主要是先将DataFrame拆成多列,然后拆成多个DataFrame再使用concat组合。但是这种方法碰到City列切割不均匀的时候可能会麻烦一点,因此,这个时候你可以使用万能方法二。

在这里插入图片描述

方法二:这个方法的主要思想是,首先将DataFrame中需要拆分的列进行拆分,再使用stack()进行轴变换,然后通过index来join即可,如下所示。

首先,将刚刚的df还原成原始形式:

在这里插入图片描述

接下来取出其City列,并切分成多列之后轴转换,之后重新设置索引,并且重命名为Company

在这里插入图片描述

最后删除df里面的Country列,并将DataFrame-df1 使用join到df里面得到最后的结果。

在这里插入图片描述

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

微信跳一跳python自动代码解读1.0

微信跳一跳python自动代码解读1.0

微信跳一跳自动代码,具体内容如下 那个跳一跳python“外挂”,有几个python文件,其中有一个是得到截图,然后鼠标在图片上点击两次,python窗口上会打印两次鼠标的位置,并且会跟...

详解Python做一个名片管理系统

名片管理系统有两个模块组成:cards_main.py 和 cards_tools.py一个是主程序,另一个是封装增删改查函数的被调用程序 代码如下 cards_main.py #!...

解析python的局部变量和全局变量

局部变量 什么是局部变量 通俗定义:函数内部定义的变量就叫局部变量。 话不多说,代码如下: def test1(): a = 300 # 定义一个局部变量a,并初始化300 pr...

python 时间信息“2018-02-04 18:23:35“ 解析成字典形式的结果代码详解

python 时间信息“2018-02-04 18:23:35“ 解析成字典形式的结果代码详解

将时间信息“2018-02-04  18:23:35“ 解析成字典形式的结果 如:{‘year':2018,‘month':2,‘day':4,‘hour':18:‘minut...

使用Python3 编写简单信用卡管理程序

1、程序执行代码: #Author by Andy #_*_ coding:utf-8 _*_ import os,sys,time Base_dir=os.path.dirname...