python|excel分列--部分分列(pandas,concat)

目录

一、问题

二、代码

三、步骤总结


一、问题

虽然excel里分列很简单但是要批量操作的话还是有点烦的。

在CSDN上找到很多使用pandas的分列教程,但是我想要达成的效果是:

原始数据共三列,第一列是我希望分列的,后面两列不想分,如何一起输出?

注:数据仅为示例并非真实数据

该表为各街道建设用地批而未供数据控规类型,希望得到的格式是:

第一列--街道

第二列--年份

第三列--类型

第四列--数量

第五列--面积

二、代码

这里我使用了easygui进行原数据输入

# 输入原始数据
msg = '输入'
title = '选择输入的excel文件'
filename = '*'
filetypes = ["*.xls"]
fileinpath = easygui.fileopenbox(msg, title, filename, filetypes)

df = pd.read_excel(fileinpath)

# 分列
df = pd.DataFrame((x.split('_') for x in df['tj']),
                  columns=['Jiedao', 'Data', 'Feature'])


# 读取原始表格后面的2列
cols = [1, 2]
df2 = pd.read_excel(fileinpath, usecols=cols)
df2.head()
df2 = pd.DataFrame(df2, columns=['Cnt_tj', 'Sum_AREA'])

# 合并,这里result是分列后得到的五列数据
result = pd.concat([df, df2], axis=1)

concat可以对两个数据框合并,axis参数是合并的方向。我这里相当于是两个数据框左右合并,就是1.如果是两部分希望上下合并的话参数设置为0.

输出excel

# 写出分列后的表格
msg = '分列后表格输出'
title = ''
filename = '*.xls'
filetypes = ["*.xls"]
fileoutpath1 = easygui.filesavebox(msg, title, filename, filetypes)
result.to_excel(fileoutpath1, index=False)

三、步骤总结

实现功能其实很简单,分为以下几步:

1、pandas读取原始数据,将需要分列的那一列在Dataframe里用split分列

2、读取原数据无需分列的部分

3、concat函数合并

4、pandas输出 to_excel

  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: Python可以使用pandas库来读取Excel数据,并进行数据分析。具体步骤如下: 1. 安装pandas库:在命令行中输入pip install pandas,即可安装pandas库。 2. 导入pandas库:在Python脚本中导入pandas库,如下所示: import pandas as pd 3. 读取Excel数据:使用pandas库中的read_excel函数来读取Excel数据,如下所示: data = pd.read_excel('data.xlsx') 其中,data.xlsx为Excel文件名,可以是相对路径或绝对路径。 4. 进行数据分析:使用pandas库中的各种函数和方法来进行数据分析,如下所示: (1)查看数据前几行:使用head函数,如下所示: data.head() (2)查看数据基本信息:使用info函数,如下所示: data.info() (3)统计数据基本情况:使用describe函数,如下所示: data.describe() (4)筛选数据:使用loc和iloc函数,如下所示: data.loc[data['列名'] > 10] data.iloc[:10, :5] (5)数据可视化:使用matplotlib库或seaborn库进行数据可视化,如下所示: import matplotlib.pyplot as plt plt.plot(data['列名']) 以上就是Python读取Excel数据并进行数据分析的基本步骤。 ### 回答2: Python是一种非常流行的编程语言,具有强大的数据分析功能,可以利用它来读取Excel数据并进行分析。有许多库和模块可用于读取Excel数据,其中最常用的是pandas库。pandas库可以轻松地读取、处理和分析Excel数据,其主要数据结构是DataFrame,可将数据组织成表格形式。 步骤如下: 1.安装pandas库 首先需要安装pandas库。在命令行中输入以下命令即可: pip install pandas 2.导入pandas库 导入pandas库之前,需要先将Excel文件转化为CSV文件,以便于使用pandas库导入数据。CSV文件是一种纯文本格式,它由逗号分隔的值组成,可以被Excel轻松地导出。 导入pandas库的代码如下: import pandas as pd 3.读取数据 在导入pandas库之后,可以使用pandas的read_csv()函数读取CSV文件。以下是读取Excel数据的基本语法: data = pd.read_csv("data.csv") 其中,“data.csv”是要读取的CSV文件名,data是DataFrame对象,它包含读取的数据。 4.数据分析 一旦数据被读入,可以对其进行各种类型的数据分析。例如,可以计算数据集的总和、均值、标准差和方差。pandas库提供了一种方便的方法来执行这些计算,可以使用describe()函数来获得有关数据集的基本统计信息: data.describe() 5.绘图 使用Matplotlib库进行数据可视化和绘图。可以将分析的结果制成直方图、散点图等,更直观的呈现出来。 import matplotlib.pyplot as plt plt.scatter(x=data['age'], y=data['income']) plt.xlabel('Age') plt.ylabel('Income') plt.title('Age vs Income') plt.show() 上述代码会生成age和income之间的散点图。 总之,Python是一种强大的数据分析工具,可以方便的读取Excel数据,并进行数据分析。使用pandas库可以轻松地将数据组织成表格形式,而使用Matplotlib库可以制作各种数据可视化图表。通过数据分析,可以更深入地理解数据、发现数据中蕴含的规律和特征,为后续的决策提供有力的支持。 ### 回答3: Python是一门很流行的编程语言,它支持处理大量的数据,可以帮助我们快速读取Excel文件中的数据,并进行数据分析。 Python读取Excel数据可以使用第三方库pandaspandas提供了read_excel函数用于读取excel文件。使用起来也很简单,只需要引入pandas库,然后使用read_excel函数读取excel文件,如下所示: ``` import pandas as pd data = pd.read_excel('data.xlsx') ``` 这样就可以把data.xlsx文件中的数据读取到data变量中了。接下来可以使用pandas的一系列函数进行数据分析。 首先,可以使用data.head()函数查看前5行数据,查看数据的格式是否正确。也可以使用data.tail()函数查看后5行数据。 ``` print(data.head()) print(data.tail()) ``` 然后,可以使用data.describe()函数查看数据的基本统计信息,如平均值,标准差,最小值,最大值等等。 ``` print(data.describe()) ``` 如果需要查看某一列的统计信息,可以使用data['columnName'].describe()函数,其中'columnName'是需要查看的列的名称。 另外,如果需要查看某一列的分布情况,可以使用data['columnName'].value_counts()函数,其中'columnName'是需要查看的列的名称。 最后,如果需要对数据进行可视化,可以使用matplotlib库和seaborn库,这两个库提供了绘制数据分布图形的函数。 总之,Python读取Excel数据并进行数据分析是非常方便和简单的,只需要掌握一些基本的函数,就可以对数据进行深入的分析和可视化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

唐唐唐吖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值