当前位置:   article > 正文

pandas读写excel文件_pandas写入excel文件

pandas写入excel文件

Pandas是一个强大的Python数据分析工具,它提供了大量的数据结构和函数,可以用来处理各种数据。Pandas提供了一种方便的方法来读取和写入Excel文件,使得数据分析和处理变得更加容易。简单列举它的几个用法:
1.读取excel

import pandas as pd

# 读取Excel文件
df = pd.read_excel('data.xlsx')

# 打印DataFrame对象
print(df)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

还可以执行sheet_name等参数:

df = pd.read_excel('data.xlsx', sheet_name=0, skiprows=1)
  • 1

2.按行写入excel:

import os
import pandas as pd

cur_dir = os.path.dirname(__file__)
# c创建一个DataFrame数据类型,并写入表头
res = pd.DataFrame(columns=("k1", "k2", "k3"))
#添加两行数据
res.loc[1] = ["11", "22", "33"]
res.loc[2] = ["111", "222", "333"]
# 写入excel文件
res.to_excel(os.path.join(cur_dir, "test.xlsx"))
#读取excel内容,默认sheet_name=‘sheet1’,按需配置
df =pd.read_excel(os.path.join(cur_dir, "test.xlsx"))
print(df.head())
#获取某一单元格数据,索引从0开始,不包含表头
df.iloc[m][m]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

输出为:

   Unnamed: 0   k1   k2   k3
0           1   11   22   33
1           2  111  222  333
  • 1
  • 2
  • 3

3.按列写入

df2 =pd.DataFrame({"data2": ['aa', 'bb', 'cc', 'dd', 'ee'],"data3":['ss', 'ff', 'gg', 'hh', 'kk']})
df2.to_excel(os.path.join(cur_dir, "test1.xlsx"), sheet_name="sheet1",startcol=0, index=False)
  • 1
  • 2

to_excel每次运行会覆盖上一次生成的文件
输出为:
在这里插入图片描述
4.交换两列

import os
cur_dir = os.path.dirname(__file__)
import pandas as pd

df2 =pd.DataFrame({"data2": ['aa', 'bb', 'cc', 'dd', 'ee'],"data3":['ss', 'ff', 'gg', 'hh', 'kk']})
df2.to_excel(os.path.join(cur_dir, "test1.xlsx"), sheet_name="sheet1",startcol=0, index=False)

dfnew = df2[['data3', 'data2']]
print(dfnew)
#两种方法均可
dfnew2 =pd.DataFrame(df2, columns=['data3', 'data2'])
print(dfnew2)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

交换后的内容为:

  data3 data2
0    ss    aa
1    ff    bb
2    gg    cc
3    hh    dd
4    kk    ee
  data3 data2
0    ss    aa
1    ff    bb
2    gg    cc
3    hh    dd
4    kk    ee
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

5.读取某一行转换为list打印

df2 =pd.DataFrame({"data2": ['aa', 'bb', 'cc', 'dd', 'ee'],"data3":['ss', 'ff', 'gg', 'hh', 'kk']})
df2.to_excel(os.path.join(cur_dir, "test1.xlsx"), sheet_name="sheet1",startcol=0, index=False)

print(df2)
print("*"*10)
print(df2.loc[1])
print("*"*10)
print(df2.iloc[1].tolist())
print("*"*10)
tmp = df2.iloc[1].to_string()
print(tmp, type(tmp))
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

输出为:

  data2 data3
0    aa    ss
1    bb    ff
2    cc    gg
3    dd    hh
4    ee    kk
**********
data2    bb
data3    ff
Name: 1, dtype: object
**********
['bb', 'ff']
**********
data2    bb
data3    ff <class 'str'>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

6.获取行索引列索引

df2 =pd.DataFrame({"data2": ['aa', 'bb', 'cc', 'dd', 'ee'], "data3": ['ss', 'ff', 'gg', 'hh', 'kk']})
df2.to_excel(os.path.join(cur_dir, "test1.xlsx"), sheet_name="sheet1", startcol=0, index=False)

print(df2.index) #获取所有表项
print(df2.columns)
for x in df2.columns:
    print(x)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

pandas更多功能还需要继续学习~~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/576337
推荐阅读
相关标签
  

闽ICP备14008679号