python?pandas庫讀取excel/csv中指定行或列數(shù)據(jù)
引言
關(guān)鍵!?。?!使用loc函數(shù)來查找。
話不多說,直接演示:
有以下名為try.xlsx表:

1.根據(jù)index查詢
條件:首先導(dǎo)入的數(shù)據(jù)必須的有index
或者自己添加吧,方法簡單,讀取excel文件時直接加index_col
代碼示例:
import pandas as pd #導(dǎo)入pandas庫 excel_file = './try.xlsx' #導(dǎo)入excel數(shù)據(jù) data = pd.read_excel(excel_file, index_col='姓名') #這個的index_col就是index,可以選擇任意字段作為索引index,讀入數(shù)據(jù) print(data.loc['李四'])
打印結(jié)果就是
部門 B
工資 6600
Name: 李四, dtype: object
(注意點:索引)
2.已知數(shù)據(jù)在第幾行找到想要的數(shù)據(jù)
假如我們的表中,有某個員工的工資數(shù)據(jù)為空了,那我們怎么找到自己想要的數(shù)據(jù)呢。
代碼如下:
for i in data.columns:
for j in range(len(data)):
if (data[i].isnull())[j]:
bumen = data.iloc[j, [0]] #找出缺失值所在的部門
data[i][j] = charuzhi(bumen)
原理很簡單,首先檢索全部的數(shù)據(jù),然后我們可以用pandas中的iloc函數(shù)。上面的iloc[j, [2]]中j是具體的位置,【0】是你要得到的數(shù)據(jù)所在的column
3.根據(jù)條件查詢找到指定行數(shù)據(jù)
例如查找A部門所有成員的的姓名和工資或者工資低于3000的人:
代碼如下:
"""根據(jù)條件查詢某行數(shù)據(jù)""" import pandas as pd #導(dǎo)入pandas庫 excel_file = './try.xlsx' #導(dǎo)入文件 data = pd.read_excel(excel_file) #讀入數(shù)據(jù) print(data.loc[data['部門'] == 'A', ['姓名', '工資']]) #部門為A,打印姓名和工資 print(data.loc[data['工資'] < 3000, ['姓名','工資']]) #查找工資小于3000的人
結(jié)果如下:

若要把這些數(shù)據(jù)獨立生成excel文件或者csv文件:
添加以下代碼
"""導(dǎo)出為excel或csv文件"""
#單條件
dataframe_1 = data.loc[data['部門'] == 'A', ['姓名', '工資']]
#單條件
dataframe_2 = data.loc[data['工資'] < 3000, ['姓名', '工資']]
#多條件
dataframe_3 = data.loc[(data['部門'] == 'A')&(data['工資'] < 3000), ['姓名', '工資']]
#導(dǎo)出為excel
dataframe_1.to_excel('dataframe_1.xlsx')
dataframe_2.to_excel('dataframe_2.xlsx')
4.找出指定列
data['columns'] #columns即你需要的字段名稱即可 #注意這列的columns不能是index的名稱 #如果要打印index的話就data.index data.columns #與上面的一樣
以上全過程用到的庫:
pandas,xlrd , openpyxl
5.找出指定的行和指定的列
主要使用的就是函數(shù)iloc
data.iloc[:,:2] #即全部行,前兩列的數(shù)據(jù)
逗號前是行,逗號后是列的范圍,很容易理解
6.在規(guī)定范圍內(nèi)找出符合條件的數(shù)據(jù)
data.iloc[:10,:][data.工資>6000]
這樣即可找出前11行里工資大于6000的所有人的信息了
總結(jié)
到此這篇關(guān)于python pandas庫讀取excel/csv中指定行或列數(shù)據(jù)的文章就介紹到這了,更多相關(guān)python pandas庫讀取行或列內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python tensorflow基于cnn實現(xiàn)手寫數(shù)字識別
這篇文章主要為大家詳細介紹了python tensorflow基于cnn實現(xiàn)手寫數(shù)字識別,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-01-01
Python bytes string相互轉(zhuǎn)換過程解析
這篇文章主要介紹了Python bytes string相互轉(zhuǎn)換過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-03-03
用Python編寫一個每天都在系統(tǒng)下新建一個文件夾的腳本
這篇文章主要介紹了用Python編寫一個每天都在系統(tǒng)下新建一個文件夾的腳本,雖然這個實現(xiàn)聽起來有點無聊...但卻是學(xué)習(xí)os和time模塊的一個小實踐,需要的朋友可以參考下2015-05-05
Python?matplotlib實現(xiàn)多子圖布局
多子圖布局是指在一個圖像中同時顯示多個子圖,每個子圖可以是獨立的圖形或者是相互關(guān)聯(lián)的圖形,下面我們就來了解下matplotlib是如何實現(xiàn)多子圖布局的吧2023-12-12
python爬蟲 線程池創(chuàng)建并獲取文件代碼實例
這篇文章主要介紹了python爬蟲 線程池創(chuàng)建并獲取文件代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-09-09
python 集合set中 add與update區(qū)別介紹
這篇文章主要介紹了python 集合set中 add與update區(qū)別介紹,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03

