溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

使用pandas庫如何對csv文件進行篩選保存

發(fā)布時間:2020-07-22 10:31:13 來源:億速云 閱讀:370 作者:小豬 欄目:開發(fā)技術(shù)

小編這次要給大家分享的是使用pandas庫如何對csv文件進行篩選保存,文章內(nèi)容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。

這個操作現(xiàn)在看來真沒啥難的,但是我找相關(guān)的資料真的找了好久。

多數(shù)大佬都是直接pandas官網(wǎng)甩我臉上,然后舉一個入門級的例子。

https://pandas.pydata.org/docs/reference/index.html

首先導(dǎo)入pandas庫

import pandas as pd

然后使用read_csv來打開指定的csv文件

df = pd.read_csv('./IP2LOCATION.csv',encoding= 'utf-8')

這個函數(shù)里面需要寫入csv文件的路徑,如果是把csv文件保存到了python的工程文件夾下,則只需要./文件名即可,然后encoding='utf-8'是使用utf-8方式編碼,有時候需要換成gbk。

雖然我們讀取的是csv文件,但其實由于我們使用的是pandas庫,所以我們實際獲得的是一個DataFrame的數(shù)據(jù)結(jié)構(gòu)。

可以使用print(type(df))進行檢驗

print(type(df))

使用pandas庫如何對csv文件進行篩選保存

DataFrame 是表格型的數(shù)據(jù)結(jié)構(gòu)。因此,我們可以將其當做表格。DataFrame 是以表格類似展示,而且還包含行標簽、列標簽。

我們可以添加一個列標簽,使用方法為pandas.DataFrame.columns

在我們的例子中DataFrame類型的變量為df,因此使用方法為df.columns,我們添加的列標簽為a、b、c、d、e、f

df.columns = ['a','b','c','d','e','f']

然后,我們想把某一列中等于特定值的那些行提取出來

可以將讀出來的內(nèi)容當做一個列表,然后這個列表的元素是表中的每一行,然后這每一行也是一個列表,也就是列表中的列表。

比如,我想將表中第5列中值為Andhra Pradesh的行提取出來,并且由于我們之前定義了第五列的列標簽為e

因此代碼為:

data = df[df['e'] == 'Andhra Pradesh']

最后我們可以通過pandas中的to_csv,來將篩選出來的數(shù)據(jù)保存到新的csv文件中。

data.to_csv('my_IP2LOCATION.csv')

用法為表名.to_csv('所要保存地方的路徑/表名.csv')

最后總結(jié)一下我們的代碼

import pandas as pd

df = pd.read_csv('./IP2LOCATION.csv',encoding= 'utf-8')
# print(type(df))
df.columns = ['a','b','c','d','e','f']
data = df[df['e'] == 'Andhra Pradesh']
data.to_csv('my_IP2LOCATION.csv')

IP2LOCATION.csv內(nèi)容如下:

使用pandas庫如何對csv文件進行篩選保存

總共有759727行

然后經(jīng)過我們的篩選后的my_IP2LOCATION.csv

使用pandas庫如何對csv文件進行篩選保存

只有3461行

PS:可以使用print(len(df.values))來查看行數(shù)

看完這篇關(guān)于使用pandas庫如何對csv文件進行篩選保存的文章,如果覺得文章內(nèi)容寫得不錯的話,可以把它分享出去給更多人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI