導航:首頁 > 編程大全 > pandas刪除資料庫

pandas刪除資料庫

發布時間:2023-01-18 07:22:35

㈠ pandas刪除空數據行及列dropna()

import pandas as pd

# 刪除含有空數據的全部行

df4 = pd.read_csv('4.csv',  encoding='utf-8')

df4 = df4.dropna()

# 可以通過axis參數來刪除含有空數據的全部列

df4 = df4.dropna(axis=1)

# 可以通過subset參數來刪除在age和sex中含有空數據的全部行

df4 = df4.dropna(subset=["age", "sex"])

print(df4)

df4 = df4.dropna(subset=['age', 'body','home.dest'])

㈡ 怎麼用python進行數據

pandas是本書後續內容的首選庫。pandas可以滿足以下需求:

㈢ pandas寫入csv文件時,如果該文件已存在

如果該文件已存在可以選擇目標表。
使用pandas自帶的數據導入向導,右擊導入的資料庫,瀏覽打開要導入的csv文件,進行必要的設置,如果該文件已存在,因此可以直接選擇目標表。
pandas是基於NumPy的一種工具,該工具是為了解決數據分析任務而創建的。

㈣ 數據分析—Pandas刪除數據的幾種情況

開始之前,pandas中DataFrame刪除對象可能存在幾種情況

本文就針對這四種情況探討一下如何操作。

模擬了一份股票交割的記錄。

也可以根據行號刪除記錄,比如刪除第三行

注意,這個辦法其實不是按照行號刪除,而是按照索引刪除。如果index為3,則會將前4條記錄都刪除。這個方法支持一個范圍,以及用負數表示從末尾刪除。

本例其實是篩選,如果需要保留,可以將篩選後的對象賦值給自己即可。

如果想取包含某些字元的記錄,可以去掉~

完成~
希望本文的內容對大家的學習或者工作能帶來一定的幫助,每天進步一點點,加油。

㈤ pandas可以執行不同庫的musql表么

不可以。
經查閱pandas資料庫可知,pandas只能執行相同庫的musql表。主要使用python中集成的SQLAlchemy、PyMySQL的兩個庫來向資料庫中新增行記錄。
pandas是基於NumPy的一種工具,該工具是為了解決數據分析任務而創建的。Pandas納入了大量庫和一些標準的數據模型,提供了高效地操作大型數據集所需的工具。

㈥ 隊列能用來構建series對象嗎

Pandas數據結構詳細說明及如何創建Series,DataFrame對象方法
2021-10-06 13:45:19 投稿:wdc

本篇文章中,我們主要側重於介紹Pandas數據結構本身的特性,以及如何創建一個Series或者DataFrame數據對象,並填入一些數據
網路上的Pandas教程中,很多都提到了如何使用Pandas將已有的數據(如csv,如hdfs等)直接載入成Pandas數據對象,然後在其基礎上進行數據分析操作,但是,很多時候,我們需要自己創建Pandas數據對象,並填入一些數據,常見的應用場景如:我們想要將現有的數據進行處理,並生成一個新的Pandas數據對象,還有,我們想利用Pandas的數據保存功能(比如to_csv, to_json, to_hdf等等)把我們採集到的數據寫入到IO里邊,因此掌握Pandas對象的特性,以及如何創建也是很重要的。

有些時候我們需要利用pandas數據結構創建自己的對象,按自己的方式保存新數據,我們將在本文中介紹如何實現。

1. Pandas的兩種數據類型
Pandas支持兩種數據類型,分別為Series和DataFrame,其中:

Series - 是一個帶有標簽的一維數組,支持多種不同的類型,但是針對同一個Series里邊存儲的數據類型必須是一致的
DataFrame - 是一個帶有標簽的二維數組,是一個尺寸可以修改的表格,一個DataFrame由多個Series組成,每一列都是一個Series
一句話描述的話就是,Series是很多標量數據(Scalar)的集合,而DataFrame是很多Series的集合。

我們來看下圖這個例子,在1D的Series中,下圖中有三個Series,分別保存了姓名(name), 年齡(age)和得分(marks),而他們的每一行都分別對應一個不同的人的信息,在每一個Series中的每一個單元格中(比如name series的第1行,對應的Prasadi)都是一個標量(Scalar),而每一行前邊的0,1,2,3這些就是數據的索引(index),也可以叫做標簽,所以說,Series是帶有標簽的一維數組。

可以看出,利用Series只能存儲一種類型的數據,比如說name series存儲的數據是字元串類型,而age series存儲的數據是整數型。如果我們想把name,age,marks存儲在一個數據結構里,我們就需要使用DataFrame,從圖中看出,DataFrame類似於一個表格數據,有行有列,行跟Series的行一致,是數據的標簽,而每一列就是原來的每一個Series。

2. Series類型
如我們在前文中所說,Series結構中可以存儲任何類型的數據,包括:整型,字元串類型,浮點型,甚至是Python對象等等,但是要求是,每一行的數據類型必須統一。那麼如何創建一個Series對象呢,

通過numpy array
Pandas的一個主要用途是數據分析,而它也是基於Numpy實現的,因此,通過numpy array來創建Series是非常常見的。

np_array = np.random.randn(5)
pd.Series(np_array, index=['a', 'b', 'c', 'd', 'e'])
上邊這段代碼,利用np.random.randn隨機生成一個長度為5的numpy array,然後pd.Series使用這個numpy array來創建一個Series,在創建的同時,指定了每一行的index(標簽)分別是a,b,c,d,e,f,輸出結果為:

通過Python字典
通過上邊這個示例,大家有沒有發現Series跟Python內置的dict類型是不是很類似,標簽相當於dict中的key,而數據內容相當於dict中的value,它們有一一對應的關系,因此,可以想像,我們能夠直接通過Python的dict來創建一個Series。

d = {'b': 1, 'a': 0, 'c': 2}
pd.Series(d)
上邊這段代碼,我們先創建了一個Python地點d,然後將這個字典傳遞給pd.Series來創建一個Pandas Series,運行結果為:

通過標量值(Scalar)
除了上邊這兩種方式,我們還可以通過一個簡單的標量值來創建Series,特別注意的是跟上邊兩種方式不同,在使用這種方式創建Series的時候,我們必須指定index

pd.Series(5, index=['a', 'b', 'c', 'd', 'e'])
如上邊代碼所示,我們使用一個常量5,然後指定index為a,b,c,d,e,同樣使用pd.Series可以創建一個Series對象,看到這里我們就能夠明白為什麼必須指定Index了吧,那是因為Series對象是有長度的,長度是可以大於1的,而標量的長度固定為1,我們可以通過指定Index的方式來控制生成的Series的長度,Series中的值則是重復使用這一個標量常量5。其運行結果為:

name屬性
當我們創建一個Series的時候,我們可以指定一個名稱,這個名稱會被存儲到Series的name屬性中,後續我們還可以使用rename方法來修改這個屬性,例如下邊這樣的代碼:

s = pd.Series(np.random.randn(5), name='this_is_name')
s
創建了一個名稱為this_is_name的Series,然後我們使用rename方法來重命名這個Series為this_is_new_name:

s = s.rename('this_is_new_name')
s
上邊這兩部分代碼的輸入如下圖:

那麼這個名稱有什麼作用呢,這里預告一下,我們將在DataFrame中用到(別忘了DataFrame是多個Series的集合)

3. DataFrame類型
在第一節中我們介紹到,DataFrame是一個二維的表格數據結構,它有行和列的概念,跟行標簽相對應的,為了能夠按列索引數據,每一列都可以有一個名稱,即列名,我們剛在Series章節中看到,Series可以表示一列數據,我們在本節中介紹的DataFrame就是多個這樣的Series的組合,每一列就對應一個Series,而每一行也對應一個Series。讀到這里,你是不是能夠猜的出我們剛說的Series的name屬性的用途了,對了,使用Series創建DataFrame的列的時候,Series的名稱就會成為列名,如果Series作為行,則Series的名稱會成為行名。

接下來我們來講解如何創建DataFrame

通過一維numpy array或者Python List 組成的字典
大家可以想想,如果一個字典的value是array或者list的時候,那麼這個字典其實就是一種表格結構,圖為DataFrame是一個表格結構的數據類型,我們是可以通過這樣的字典來創建DataFrame,例如下邊這段代碼

d = {'one': [1., 2., 3., 4.],
'two': [4., 3., 2., 1.]}
pd.DataFrame(d, index=['a', 'b', 'c', 'd'])
我們把d這個Python字典傳遞給pd.DataFrame來創建新的DataFrame,同時我們可以通過指定index來指定DataFrame的行名(標簽),上邊代碼的輸出為

通過包含列表的Python List
我們再來想想一下,除了字典之外可以表示表格數據,還有沒有其他的方法,是的,還有Python List,例如下邊這段代碼

data = [(1, 2., 'Hello'), (2, 3., "World")]
pd.DataFrame(data)
我們可以用data這樣的Python List來表示表格數據,不同於前邊提到的字典(dict),用List表示的表格數據其實是沒有行名和列名的,因此Pandas默認會自動生成行名和列名,所以上邊的代碼輸出為:

當然,自動生成的行名列名沒有任何意義,為了更好的操作數據,我們還可以通過設置pd.DataFrame方法的index或者columns參數來指定自己的行名或者列名。

通過包含Python 字典的Python List
我們繼續想想,還有什麼能夠表示表格數據?對了,包含Python字典的Python List也是可以表達表格數據的,例如下邊的代碼

data = [{'a': 1, 'b': 2}, {'a': 5, 'b': 10, 'c': 20}]
pd.DataFrame(data)
data是一個Python List,而列表中的每一個元素都是一個字典,運行結果為:

類似的,我們也可以通過指定index或者columns參數來修改行名和列名

通過Series
我們一直在提DataFrame是很多Series的集合(註:Series在DataFrame中可以是一行,也可以是一列),因此,我們也可以通過Series來創建DataFrame,例如下邊這段代碼

s1 = pd.Series(np.random.randn(5), name='this_is_name')
df = pd.DataFrame(s1)
df
利用s1這個Series來創建只有一列的DataFrame,輸出結果為:

還記得不,我們前邊提到了Series的name屬性,在使用Series創建DataFrame的時候,這個屬性會用來作為列名(或者行名,我們在下邊的列子可以看得出),例如下邊的這段代碼,如果有兩個Series,我們還可以用下邊這樣的方式創建DataFrame

s1 = pd.Series(np.random.randn(5), name='this_is_name')
s2 = s.rename('this_is_new_name')
df = pd.DataFrame([s1, s2])
df
這里我們使用了兩個名分別為this_is_name和this_is_new_name的Series來創建DataFrame,得到的結果為:

到這里,相信讀者已經對Pandas提供的數據類型有了一個全面的認識了,並且有能力自己創建Pandas數據結構,並存儲自己的數據了,一個常見的應用場景就是我們通過爬蟲獲取到數據以後,可以將這些非結構化的數據以Pandas的表格格式保存,值得注意的是數據存儲在Pandas數據結構中的時候,數據其實是在內存中的,當程序被關閉以後,數據就丟失了,如果我們需要將數據持久化保存到硬碟或者資料庫中的話,則可以通過簡單的調用Pandas提供的to_csv, to_json, to_hdf等等介面將數據永久保存下來。

更多Python Pandas庫的相關文章,請點擊下面的相關文章

您可能感興趣的文章:
Python數據分析 Pandas Series對象操作
使用python計算方差方式——pandas.series.std()
教你漂亮列印Pandas DataFrames和Series
pandas的Series類型與基本操作詳解
Pandas把dataframe或series轉換成list的方法
pandas中的series數據類型詳解
淺談Pandas Series 和 Numpy array中的相同點
Pandas中Series的屬性,方法,常用操作使用案例
相關文章

Python淺析迭代器Iterator的使用
Python淺析迭代器Iterator的使用
2022-07-07
python面試題之read、readline和readlines的區別詳解
python面試題之read、readline和readlines的區別詳解
2022-07-07
Python利用LyScript插件實現批量打開關閉進程
Python利用LyScript插件實現批量打開關閉進程
2022-07-07
Pandas 篩選和刪除目標值所在的行的實現
Pandas 篩選和刪除目標值所在的行的實現
2022-07-07
最近更新

Python動態配置管理Dynaconf的實現示例詳解
Python動態配置管理Dynaconf的實現示例詳解
2022-07-07
Python中np.linalg.norm()用法實例總結
Python中np.linalg.norm()用法實例總結
2022-07-07
python生成requirements.txt文件的推薦方法
python生成requirements.txt文件的推薦方法
2022-07-07
Python3讀取文件的操作詳解
Python3讀取文件的操作詳解
2022-07-07
業界資訊

美國設下計謀,用娘炮文化重塑日本,已影響至中國
美國設下計謀,用娘炮文化重塑日本,已影響至中國
2021-11-19
時空伴隨者是什麼意思?時空伴隨者介紹
時空伴隨者是什麼意思?時空伴隨者介紹
2021-11-09
工信部稱網盤企業免費用戶最低速率應滿足基本下載需求,天翼雲盤回應:堅決支持,始終
工信部稱網盤企業免費用戶最低速率應滿足基本下載需求,天翼雲盤回應:堅決支持,始終
2021-11-05
2022年放假安排出爐:五一連休5天 2022年所有節日一覽表
2022年放假安排出爐:五一連休5天 2022年所有節日一覽表
2021-10-26
電腦版 - 返回首頁

2006-2022 腳本之家 JB51.Net , All Rights Reserved.
蘇ICP備14036222號

㈦ python--pandas刪除

drop 方法是pandas中刪除行或列的方法。

根據 索引名 刪除目標行。

當需要根據索引位置刪除時,可以使用 index 屬性來組合完成。

根據 列名 刪除目標列,同時需要設置 axis=1 或者 columns 。

當需要根據列位置刪除時,可以使用 columns 屬性來組合完成。

刪除列也可以用關鍵字 del 實現,每次只能刪除一列,且刪除列後,原數據發生改變。

同時刪除行和列,需要為行使用 index 參數,為列使用 columns 參數。

當數據框有多重索引時,刪除行時,需要設置 level 參數。

多重索引數據框同時刪除行和列時,只能刪除第一層索引和列。

dropna 為刪除缺失值的方法。

默認會刪除包含缺失值的所有行。

可設置 how , thresh , subset 參數控制刪除的行為。

設置參數 axis=1 或者 axis=columns 刪除缺失列。

同樣,可以設置 how , thresh , subset 參數來控制刪除缺失列的行為。

刪除重復值用 drop_plicates 方法實現。

設置 subset 參數,根據列刪除重復行。

設置 ignore_index=True 可以對刪除重復行後的數據索引重排序。

閱讀全文

與pandas刪除資料庫相關的資料

熱點內容
寧波哪裡有學It編程的地方 瀏覽:808
win10最新預覽版續航 瀏覽:705
web伺服器更新代碼 瀏覽:603
u盤裝msdnwin10 瀏覽:135
電子表格列印有內容但是打開文件沒內容 瀏覽:788
大數據分析如何做好 瀏覽:819
拉美數據中心在哪裡 瀏覽:797
office2007診斷工具 瀏覽:83
紅眼去除工具 瀏覽:405
手機語言編程用什麼鍵盤 瀏覽:599
java環境已配置好了找不到文件 瀏覽:565
w10系統修改文件格式 瀏覽:179
桌面怎麼把兩個文件夾壓縮成一個 瀏覽:293
u盤為什麼存文件這么慢 瀏覽:807
手機的下拉菜單代碼 瀏覽:384
寧波ug編程培訓中心哪裡好 瀏覽:565
描述性別是屬於什麼數據 瀏覽:752
聽力障礙人群用哪些app 瀏覽:932
中國郵政ems微信號 瀏覽:699
win10刪除更新補丁 瀏覽:870

友情鏈接