最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python使用pandas讀取excel文件中數(shù)據(jù)的四種方法

 更新時(shí)間:2025年09月05日 09:08:29   作者:Python資訊站  
這篇文章主要為大家詳細(xì)介紹了python使用pandas讀取excel文件中數(shù)據(jù)的四種方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

一、讀取Excel文件

使用pandas的**read_excel()**方法,可通過(guò)文件路徑直接讀取。注意到,在一個(gè)excel文件中有多個(gè)sheet,因此,對(duì)excel文件的讀取實(shí)際上是讀取指定文件、并同時(shí)指定sheet下的數(shù)據(jù)??梢砸淮巫x取一個(gè)sheet,也可以一次讀取多個(gè)sheet,同時(shí)讀取多個(gè)sheet時(shí)后續(xù)操作可能不夠方便,因此建議一次性只讀取一個(gè)sheet。

當(dāng)只讀取一個(gè)sheet時(shí),返回的是DataFrame類(lèi)型,這是一種表格數(shù)據(jù)類(lèi)型,它清晰地展示出了數(shù)據(jù)的表格型結(jié)構(gòu)。具體寫(xiě)法為:

(1)不指定sheet參數(shù),默認(rèn)讀取第一個(gè)sheet,

 df=pd.read_excel(“data_test.xlsx”)

(2)指定sheet名稱(chēng)讀取,

 df=pd.read_excel(“data_test.xlsx”,sheet_name=“test1”)

(3)指定sheet索引號(hào)讀取,

 df=pd.read_excel(“data_test.xlsx”,sheet_name=0) #sheet索引號(hào)從0開(kāi)始

*同時(shí)讀取多個(gè)sheet,以字典形式返回。(不推薦)

(1)指定多個(gè)sheet名稱(chēng)讀取, df=pd.read_excel(“data_test.xlsx”,sheet_name=[“test1”,“test2”])

(2)指定多個(gè)sheet索引號(hào)讀取,

df=pd.read_excel(“data_test.xlsx”,sheet_name=[0,1])

(3)混合指定sheet名稱(chēng)和sheet索引號(hào)讀取,

df=pd.read_excel(“data_test.xlsx”,sheet_name=[0,“test2”])

二、DataFrame對(duì)象的結(jié)構(gòu)

對(duì)內(nèi)容的讀取分有表頭和無(wú)表頭兩種方式,默認(rèn)情形下是有表頭的方式,即將第一行元素自動(dòng)置為表頭標(biāo)簽,其余內(nèi)容為數(shù)據(jù);當(dāng)在read_excel()方法中加上header=None參數(shù)時(shí)是不加表頭的方式,即從第一行起,全部?jī)?nèi)容為數(shù)據(jù)。讀取到的Excel數(shù)據(jù)均構(gòu)造成并返回DataFrame表格類(lèi)型(以下以df表示)。

對(duì)有表頭的方式,讀取時(shí)將自動(dòng)地將第一行元素置為表頭向量,同時(shí)為除表頭外的各行內(nèi)容加入行索引(從0開(kāi)始)、各列內(nèi)容加入列索引(從0開(kāi)始)。如圖所示

對(duì)無(wú)表頭的方式,讀取時(shí)將自動(dòng)地為各行內(nèi)容加入行索引(從0開(kāi)始)、為各列內(nèi)容加入列索引(從0開(kāi)始),行索引從第一行開(kāi)始。如圖所示

三、用values方式獲取數(shù)據(jù)

1.基本方法

df.values,獲取全部數(shù)據(jù),返回類(lèi)型為ndarray(二維);

df.index.values,獲取行索引向量,返回類(lèi)型為ndarray(一維);

df.columns.values,獲取列索引向量(對(duì)有表頭的方式,是表頭標(biāo)簽向量),返回類(lèi)型為ndarray(一維)。

根據(jù)具體需要,通過(guò)ndarray的使用規(guī)則獲取指定數(shù)據(jù)。數(shù)據(jù)獲取的結(jié)構(gòu)示意圖如下所示。
有表頭

無(wú)表頭

2.獲取指定數(shù)據(jù)的寫(xiě)法

(1)獲取全部數(shù)據(jù):

df.values,獲取全部數(shù)據(jù),返回類(lèi)型為ndarray(二維)。

(2)獲取某個(gè)值:

df.values[i , j],第i行第j列的值,返回類(lèi)型依內(nèi)容而定。

(3)獲取某一行:

df.values[i],第i行數(shù)據(jù),返回類(lèi)型為ndarray(一維)。

(4)獲取多行:

df.values[[i1 , i2 , i3]],第i1、i2、i3行數(shù)據(jù),返回類(lèi)型為ndarray(二維)。

(5)獲取某一列:

df.values[: , j],第j列數(shù)據(jù),返回類(lèi)型為ndarray(一維)。

(6)獲取多列:

df.values[:,[j1,j2,j3]],第j1、j2、j3列數(shù)據(jù),返回類(lèi)型為ndarray(二維)。

(7)獲取切片:

df.values[i1:i2 , j1:j2],返回行號(hào)[i1,i2)、列號(hào)[j1,j2)左閉右開(kāi)區(qū)間內(nèi)的數(shù)據(jù),返回類(lèi)型為ndarray(二維)。

3.示例

帶表頭,excel內(nèi)容為

Python腳本為

import pandas as pd

df = pd.read_excel("data_test.xlsx")

print("\n(1)全部數(shù)據(jù):")
print(df.values)

print("\n(2)第2行第3列的值:")
print(df.values[1,2])

print("\n(3)第3行數(shù)據(jù):")
print(df.values[2])

print("\n(4)獲取第2、3行數(shù)據(jù):")
print(df.values[[1,2]])

print("\n(5)第2列數(shù)據(jù):")
print(df.values[:,1])

print("\n(6)第2、3列數(shù)據(jù):")
print(df.values[:,[1,2]])

print("\n(7)第2至4行、第3至5列數(shù)據(jù):")
print(df.values[1:4,2:5])

執(zhí)行結(jié)果

四、用loc和iloc方式獲取數(shù)據(jù)

1.基本寫(xiě)法

loc和iloc方法是通過(guò)索引定位的方式獲取數(shù)據(jù)的,寫(xiě)法為loc[A, B]和iloc[A, B]。其中A表示對(duì)行的索引,B表示對(duì)列的索引,B可缺省。A、B可為列表或i1:i2(切片)的形式,表示多行或多列。

這兩個(gè)方法的區(qū)別是,loc將參數(shù)當(dāng)作標(biāo)簽處理,iloc將參數(shù)當(dāng)作索引號(hào)處理。也就是說(shuō),在有表頭的方式中,當(dāng)列索引使用str標(biāo)簽時(shí),只可用loc,當(dāng)列索引使用索引號(hào)時(shí),只可用iloc;在無(wú)表頭的方式中,索引向量也是標(biāo)簽向量,loc和iloc均可使用;在切片中,loc是閉區(qū)間,iloc是半開(kāi)區(qū)間。

獲取指定數(shù)據(jù)的寫(xiě)法:

(1)獲取全部數(shù)據(jù):

df.loc[: , :].values

df.iloc[: , :].values,返回類(lèi)型為ndarray(二維)。

(2)獲取某個(gè)值:

無(wú)表頭

df.loc[i, j]

df.iloc[i, j],第i行第j列的值,返回類(lèi)型依內(nèi)容而定。

有表頭

df.loc[i, “序號(hào)”],第i行‘序號(hào)’列的值。

df.iloc[i, j],第i行第j列的值。

(3)獲取某一行:

df.loc[i].values

df.iloc[i].values,第i行數(shù)據(jù),返回類(lèi)型為ndarray(一維)。

(4)獲取多行:

df.loc[[i1, i2, i3]].values,

df.iloc[[i1, i2, i3]].values,第i1、i2、i3行數(shù)據(jù),返回類(lèi)型為ndarray(二維)。

(5)獲取某一列:

無(wú)表頭

df.loc[:, j].values

df.iloc[:, j].values,第j列數(shù)據(jù),返回類(lèi)型為ndarray(一維)。

有表頭

df.loc[:,“姓名”].values,‘姓名’列數(shù)據(jù),返回類(lèi)型為ndarray(一維)。

df.iloc[:, j].values,第j列數(shù)據(jù),返回類(lèi)型為ndarray(一維)。

(6)獲取多列:

無(wú)表頭

df.loc[:, [j1 , j2]].values

df.iloc[:, [j1 , j2]].values,第j1、j2列數(shù)據(jù),返回類(lèi)型為ndarray(二維)。

有表頭

  • df.loc[:, [“姓名”,“性別”]].values,‘姓名’、‘性別’列數(shù)據(jù),返回類(lèi)型為ndarray(二維);
  • df.iloc[:, [j1 , j2]].values,第j1、j2列數(shù)據(jù),返回類(lèi)型為ndarray(二維)。

(7)獲取切片:

無(wú)表頭

  • df.loc[i1:i2, j1:j2].values,返回行號(hào)[i1,i2]、列號(hào)[j1,j2]閉區(qū)間內(nèi)的數(shù)據(jù),返回類(lèi)型為ndarray(二維);
  • df.iloc[i1:i2, j1:j2].values,返回行號(hào)[i1,i2)、列號(hào)[j1,j2)左閉右開(kāi)區(qū)間內(nèi)的數(shù)據(jù),返回類(lèi)型為ndarray(二維)。

有表頭

  • df.loc[i1:i2, “序號(hào)”:“姓名”].values,返回行號(hào)[i1,i2]、列號(hào)[“序號(hào)”,“姓名”]閉區(qū)間的數(shù)據(jù),返回類(lèi)型為ndarray(二維);
  • df.iloc[i1:i2, j1:j2].values,返回行號(hào)[i1,i2)、列號(hào)[j1,j2)左閉右開(kāi)區(qū)間內(nèi)的數(shù)據(jù),返回類(lèi)型為ndarray(二維)。

2.示例

帶表頭,excel內(nèi)容為

Python腳本為

import pandas as pd

df = pd.read_excel("data_test.xlsx")

print("\n(1)全部數(shù)據(jù):")
print(df.iloc[:,:].values)

print("\n(2)第2行第3列的值:")
print(df.iloc[1,2])

print("\n(3)第3行數(shù)據(jù):")
print(df.iloc[2].values)

print("\n(4)第2列數(shù)據(jù):")
print(df.iloc[:,1].values)

print("\n(5)第6行的姓名:")
print(df.loc[5,"姓名"])

print("\n(6)第2至3行、第3至4列數(shù)據(jù):")
print(df.iloc[1:3,2:4].values)

執(zhí)行結(jié)果

到此這篇關(guān)于python使用pandas讀取excel文件中數(shù)據(jù)的四種方法的文章就介紹到這了,更多相關(guān)pandas讀取excel數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python?HTML解析:BeautifulSoup,Lxml,XPath使用教程

    Python?HTML解析:BeautifulSoup,Lxml,XPath使用教程

    文章介紹Python中HTML解析工具BeautifulSoup,lxml,XPath的使用,對(duì)比其優(yōu)缺點(diǎn),通過(guò)網(wǎng)頁(yè)提取小工具示例展示數(shù)據(jù)抓取方法,并探討結(jié)合智能技術(shù)提取摘要、關(guān)鍵詞的可能及后續(xù)學(xué)習(xí)方向
    2025-06-06
  • Python Faker庫(kù)基本用法詳解

    Python Faker庫(kù)基本用法詳解

    Faker 是一個(gè)非常強(qiáng)大的庫(kù),適用于生成各種類(lèi)型的偽隨機(jī)數(shù)據(jù),可以幫助開(kāi)發(fā)者在測(cè)試、數(shù)據(jù)生成、或其他需要隨機(jī)數(shù)據(jù)的場(chǎng)景中提高效率,本文給大家介紹Python Faker庫(kù)基本用法詳解,感興趣的朋友一起看看吧
    2025-04-04
  • python求numpy中array按列非零元素的平均值案例

    python求numpy中array按列非零元素的平均值案例

    這篇文章主要介紹了python求numpy中array按列非零元素的平均值案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • python使用zip將list轉(zhuǎn)為json的方法

    python使用zip將list轉(zhuǎn)為json的方法

    今天小編就為大家分享一篇python使用zip將list轉(zhuǎn)為json的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • python基礎(chǔ)之循環(huán)語(yǔ)句

    python基礎(chǔ)之循環(huán)語(yǔ)句

    這篇文章主要介紹了python的循環(huán)語(yǔ)句,實(shí)例分析了Python中返回一個(gè)返回值與多個(gè)返回值的方法,需要的朋友可以參考下
    2021-10-10
  • Pytest框架 conftest.py文件的使用詳解

    Pytest框架 conftest.py文件的使用詳解

    conftest.py是pytest特有的本地測(cè)試配置文件,既可以用來(lái)設(shè)置項(xiàng)目級(jí)別的fixture,也可以用來(lái)導(dǎo)入外部插件,本文給大家介紹Pytest框架 conftest.py文件的使用,感興趣的朋友一起看看吧
    2022-06-06
  • VS?code終端中python選擇解釋器(interpreter)報(bào)錯(cuò)解決方式

    VS?code終端中python選擇解釋器(interpreter)報(bào)錯(cuò)解決方式

    VS Code是當(dāng)前最受歡迎的代碼編輯器之一,對(duì)Python開(kāi)發(fā)的支持也非常友好,這篇文章主要介紹了VS?code終端中python選擇解釋器(interpreter)報(bào)錯(cuò)解決方式,需要的朋友可以參考下
    2025-08-08
  • Python爬蟲(chóng)中urllib3與urllib的區(qū)別是什么

    Python爬蟲(chóng)中urllib3與urllib的區(qū)別是什么

    Urllib3是一個(gè)功能強(qiáng)大,條理清晰,用于HTTP客戶(hù)端的Python庫(kù)。那么Python爬蟲(chóng)中urllib3與urllib的區(qū)別是什么,本文就詳細(xì)的來(lái)介紹一下
    2021-07-07
  • Django中更改默認(rèn)數(shù)據(jù)庫(kù)為mysql的方法示例

    Django中更改默認(rèn)數(shù)據(jù)庫(kù)為mysql的方法示例

    這篇文章主要介紹了Django中更改默認(rèn)數(shù)據(jù)庫(kù)為mysql的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • Python機(jī)器學(xué)習(xí)之Kmeans基礎(chǔ)算法

    Python機(jī)器學(xué)習(xí)之Kmeans基礎(chǔ)算法

    這篇文章主要介紹了Python機(jī)器學(xué)習(xí)之Kmeans基礎(chǔ)算法,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04

最新評(píng)論

桂林市| 南溪县| 麟游县| 德令哈市| 博野县| 安龙县| 开原市| 钟山县| 威海市| 绥江县| 通化县| 莱芜市| 四会市| 宁陕县| 扬中市| 全南县| 察隅县| 北安市| 东乡县| 聂拉木县| 出国| 武义县| 蓬溪县| 湄潭县| 吴忠市| 托里县| 靖边县| 和顺县| 太和县| 东兰县| 湘阴县| 石狮市| 张家界市| 高台县| 阿克陶县| 堆龙德庆县| 苍梧县| 淮滨县| 杭州市| 灵武市| 商水县|