日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

python使用pandas讀xlsx文件的實(shí)現(xiàn)_python

作者:生活甜甜好運(yùn)連連 ? 更新時間: 2022-07-03 編程語言

使用pandas讀xlsx文件

  • 讀取前n行數(shù)據(jù)
  • 讀取指定數(shù)據(jù)(指定行指定列)
  • 獲取文件行號和列標(biāo)題
  • 將數(shù)據(jù)轉(zhuǎn)換為字典形式
import pandas as pd
#1.讀取前n行所有數(shù)據(jù)
df1=pd.read_excel('d1.xlsx')#讀取xlsx中的第一個sheet
data1=df1.head(10)#讀取前10行所有數(shù)據(jù)
data2=df1.values#list【】  相當(dāng)于一個矩陣,以行為單位
#data2=df.values()   報(bào)錯:TypeError: 'numpy.ndarray' object is not callable
print("獲取到所有的值:\n{0}".format(data1))#格式化輸出
print("獲取到所有的值:\n{0}".format(data2))
 
#2.讀取特定行特定列
data3=df1.iloc[0].values#讀取第一行所有數(shù)據(jù)
data4=df1.iloc[1,1]#讀取指定行列位置數(shù)據(jù):讀取(1,1)位置的數(shù)據(jù)
data5=df1.iloc[[1,2]].values#讀取指定多行:讀取第一行和第二行所有數(shù)據(jù)
data6=df1.iloc[:,[0]].values#讀取指定列的所有行數(shù)據(jù):讀取第一列所有數(shù)據(jù)
print("數(shù)據(jù):\n{0}".format(data3))
print("數(shù)據(jù):\n{0}".format(data4))
print("數(shù)據(jù):\n{0}".format(data5))
print("數(shù)據(jù):\n{0}".format(data6))
 
#3.獲取xlsx文件行號、列號
print("輸出行號列表{}".format(df1.index.values))#獲取所有行的編號:0、1、2、3、4
print("輸出列標(biāo)題{}".format(df1.columns.values))#也就是每列的第一個元素
 
#4.將xlsx數(shù)據(jù)轉(zhuǎn)換為字典
data=[]
for i in df1.index.values:#獲取行號的索引,并對其遍歷
    #根據(jù)i來獲取每一行指定的數(shù)據(jù),并用to_dict轉(zhuǎn)成字典
    row_data=df1.loc[i,['id','name','class','data','score',]].to_dict()
    data.append(row_data)
print("最終獲取到的數(shù)據(jù)是:{0}".format(data))
 
#iloc和loc的區(qū)別:iloc根據(jù)行號來索引,loc根據(jù)index來索引。
#所以1,2,3應(yīng)該用iloc,4應(yīng)該有l(wèi)oc

數(shù)據(jù):d1.xlsx

id name class data score
201901 A 1 Jan-20 1.3
201902 B 2 Mar-20 3.4
201903 C 3 May-20 3.4
201904 D 1 Jan-20 3.4
201905 E 1 Feb-20 5.6
201906 F 1 Mar-20 4.6
201907 G 1 Feb-19 7.8
201908 H 2 Apr-30 5.6
201909 I 3 Jan-42 5.6
201910 G 4 Mar-30 4.5
201911 K 5 Apr-20 3.4
201912 L 6 Apr-20 2.3
201913 M 4 Mar-20 2.4

運(yùn)行結(jié)果展示

原文鏈接:https://blog.csdn.net/RitaAndWakaka/article/details/108366203

欄目分類
最近更新