日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

Pandas入門的12個技巧

來源: 責編: 時間:2024-01-03 17:22:15 226觀看
導讀今天,就為大家總結一下 “Pandas數據處理的12技巧”,拿來即用,隨查隨用。今天,就為大家總結一下 “Pandas數據處理的12技巧”,拿來即用,隨查隨用。1. 安裝你還可以使用內置的 Python 工具 pip 安裝 Pandas 并運行以下命令:$

今天,就為大家總結一下 “Pandas數據處理的12技巧”,拿來即用,隨查隨用。6wC28資訊網——每日最新資訊28at.com

6wC28資訊網——每日最新資訊28at.com

今天,就為大家總結一下 “Pandas數據處理的12技巧”,拿來即用,隨查隨用。6wC28資訊網——每日最新資訊28at.com

1. 安裝

你還可以使用內置的 Python 工具 pip 安裝 Pandas 并運行以下命令:6wC28資訊網——每日最新資訊28at.com

$ pip install pandas

安裝完成后的提示成功,則可以環境中使用pandas包了。6wC28資訊網——每日最新資訊28at.com

import pandas

2. 創建數據列

Pandas一維數組(數據列)可以保存任何數據類型。一般通過調用 pd.Series() 方法實現,不指定index,默認為0,1,2,3...。6wC28資訊網——每日最新資訊28at.com

import pandasimport numpyS = pandas.Series(    [1, 2, 3, 4],  # 數據    index=["a", "b", "c", "d"],  # 指定索引    dtype=numpy.int8,  # 指定數據類型)S.name = "test"  # 創建一維數組的名稱S.index.name = "index"  # 創建一維數組的索引名稱print(S)

輸出:6wC28資訊網——每日最新資訊28at.com

indexa    1b    2c    3d    4Name: test, dtype: int8

3. 創建數據框

創建具有列的二維數據結構的對象(數據框)。一般通過調用 pd.DataFrame() 方法實現,不指定index,默認為0,1,2,3...。6wC28資訊網——每日最新資訊28at.com

import pandasdat_list = [    [1, 2, 3],    [4, 6, 8],    [10, 11, 12],]df = pandas.DataFrame(    dat_list,    index=["i1", "i3", "i2"],    columns=["a", "b", "c"],)print(df)

輸出:6wC28資訊網——每日最新資訊28at.com

a   b   ci1   1   2   3i3   4   6   8i2  10  11  12

4. CSV文件的讀寫

Pandas 支持從 CSV的讀寫,我們用 pd.read_csv() 和 pd.to_csv() 方法來實現。6wC28資訊網——每日最新資訊28at.com

import pandasd = {    "A": [1, 2, 3],    "B": [4, 5, 6],    "C": [7, 8, 9],    "D": [10, 11, 12],}df = pandas.DataFrame(d, index=["i2", "i1", "i3"])print(df)df.to_csv("output/test.csv") # 導出到CSV文件dfnew = pandas.read_csv("output/test.csv", index_col=0) # index_col=0 表示第一列為索引print(dfnew)

5. Excel文件的讀寫

Pandas 支持從 Excel的讀寫,我們用 pd.read_excel() 和 pd.to_excel() 方法來實現。6wC28資訊網——每日最新資訊28at.com

import pandasd = {    "A": [1, 2, 3],    "B": [4, 5, 6],    "C": [7, 8, 9],    "D": [10, 11, 12],}df = pandas.DataFrame(d, index=["i2", "i1", "i3"])print(df)df.to_excel("output/test.xlsx") # 導出到exceldfnew = pandas.read_excel("output/test.xlsx", index_col=0) # index_col=0 表示第一列為索引print(dfnew)

6. 通過位置選擇值

Pandas 支持通過位置選擇值,我們用 df.iloc[row_index, column_index] 來實現。6wC28資訊網——每日最新資訊28at.com

import pandasd = {    "A": [1, 2, 3],    "B": [4, 5, 6],    "C": [7, 8, 9],    "D": [10, 11, 12],}df = pandas.DataFrame(d, index=["i2", "i1", "i3"])print(df)print(df.iloc[2, 1])  # 6 結果為一個值print(df.iloc[[2], [1]])  # 結果為一個元素的數據框print(df.iloc[1:3, :])  # 結果為一個數據框

輸出:6wC28資訊網——每日最新資訊28at.com

A  B  C   Di2  1  4  7  10i1  2  5  8  11i3  3  6  9  126    Bi3  6    A  B  C   Di1  2  5  8  11i3  3  6  9  12

7. 通過名稱選擇值

Pandas 支持通過名稱選擇值,我們用 df.loc[row_name, column_name] 來實現。6wC28資訊網——每日最新資訊28at.com

import pandasd = {    "A": [1, 2, 3],    "B": [4, 5, 6],    "C": [7, 8, 9],    "D": [10, 11, 12],}df = pandas.DataFrame(d, index=["i2", "i1", "i3"])print(df)print(df.loc["i2", "C"])  # 6 結果為一個值print(df.loc[["i2"], ["C"]])  # 結果為一個元素的數據框print(df.loc[["i2", "i3"], ["A", "D"]])  # 切片

輸出:6wC28資訊網——每日最新資訊28at.com

A  B  C   Di2  1  4  7  10i1  2  5  8  11i3  3  6  9  127    Ci2  7    A   Di2  1  10i3  3  12

8. 標簽可以重復么?

這是一個有意思的問題,如果重復了如何取值呢,如何去掉重復呢?6wC28資訊網——每日最新資訊28at.com

import pandasd = {    "A": [1, 2, 3],    "B": [4, 5, 6],    "C": [7, 8, 9],    "D": [10, 11, 12],}df = pandas.DataFrame(d, index=["i2", "i1", "i2"])print(df)print(df.loc["i2", "C"])df.columns = ["A", "B", "B", "D"]print(df)print(df.loc["i2", "B"])

輸出:6wC28資訊網——每日最新資訊28at.com

A  B  C   Di2  1  4  7  10i1  2  5  8  11i2  3  6  9  12i2    7i2    9Name: C, dtype: int64    A  B  B   Di2  1  4  7  10i1  2  5  8  11i2  3  6  9  12    B  Bi2  4  7i2  6  9

9. 刪除行/列

Pandas 支持刪除行/列,我們用 df.drop([col/row name], axis=0/1) 來實現。6wC28資訊網——每日最新資訊28at.com

import pandasd = {    "A": [1, 2, 3],    "B": [4, 5, 6],    "C": [7, 8, 9],    "D": [10, 11, 12],}df = pandas.DataFrame(d, index=["i2", "i1", "i3"])print(df)df.drop(    ["i2", "i1"],    axis=0,  # axis=0刪除行,axis=1刪除列    inplace=True, # 如果為True,則在原數據上進行操作,否則,創建一個新的數據對象    errors="ignore",  # 忽略不存在的列)print(df)

輸出:6wC28資訊網——每日最新資訊28at.com

A  B  C   Di2  1  4  7  10i1  2  5  8  11i3  3  6  9  12    A  B  C   Di3  3  6  9  12

10. 在最后增加列

import pandasd = {    "A": [1, 2, 3],    "B": [4, 5, 6],    "C": [7, 8, 9],    "D": [10, 11, 12]}df = pandas.DataFrame(d, index=["i2", "i1", "i3"])print(df)df['E'] = 0print(df)

輸出為:6wC28資訊網——每日最新資訊28at.com

A  B  C   Di2  1  4  7  10i1  2  5  8  11i3  3  6  9  12    A  B  C   D  Ei2  1  4  7  10  0i1  2  5  8  11  0i3  3  6  9  12  0

11. 在最后增加行

import pandasd = {    "A": [1, 2, 3],    "B": [4, 5, 6],    "C": [7, 8, 9],    "D": [10, 11, 12],}df = pandas.DataFrame(d, index=["i2", "i1", "i3"])print(df)df = df.append(    pandas.DataFrame({"A": 13, "B": 14, "C": 15, "D": 16}, index=["i4"]),    ignore_index=True,)print(df)

輸出:6wC28資訊網——每日最新資訊28at.com

A  B  C   Di2  1  4  7  10i1  2  5  8  11i3  3  6  9  12    A   B   C   D0   1   4   7  101   2   5   8  112   3   6   9  123  13  14  15  16

12. 通過標簽(索引或列名)排序

import pandasd = {    "A": [1, 2, 3],    "B": [4, 5, 6],    "C": [7, 8, 9],    "D": [10, 11, 12]}df = pandas.DataFrame(d, index=["i2", "i1", "i3"])print(df)df = df.sort_index(    axis=0, # axis=0 按行標簽排序,axis=1 按列標簽排序    level=None,    ascending=True, # 是否升序    inplace=False, # 是否修改原數據    kind="quicksort", # 排序算法    na_positinotallow="last", # 如果有NA值,放在最后    sort_remaining=True, # 是否排序剩余列)print(df)

輸出:6wC28資訊網——每日最新資訊28at.com

A  B  C   Di2  1  4  7  10i1  2  5  8  11i3  3  6  9  12    A  B  C   Di1  2  5  8  11i2  1  4  7  10i3  3  6  9  12

總結

上面分享的pandas入門的12個技巧,希望對你有所幫助。6wC28資訊網——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-57288-0.htmlPandas入門的12個技巧

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 加速Python循環的12種方法,最高可以提速900倍

下一篇: 掌握這個技術,給輪播圖和文本插上自由之翼

標簽:
  • 熱門焦點
  • 分布式系統中的CAP理論,面試必問,你理解了嘛?

    對于剛剛接觸分布式系統的小伙伴們來說,一提起分布式系統,就感覺高大上,深不可測。而且看了很多書和視頻還是一臉懵逼。這篇文章主要使用大白話的方式,帶你理解一下分布式系統
  • 深度探索 Elasticsearch 8.X:function_score 參數解讀與實戰案例分析

    在 Elasticsearch 中,function_score 可以讓我們在查詢的同時對搜索結果進行自定義評分。function_score 提供了一系列的參數和函數讓我們可以根據需求靈活地進行設置。近期
  • 每天一道面試題-CPU偽共享

    前言:了不起:又到了每天一到面試題的時候了!學弟,最近學習的怎么樣啊 了不起學弟:最近學習的還不錯,每天都在學習,每天都在進步! 了不起:那你最近學習的什么呢? 了不起學弟:最近在學習C
  • 2023年,我眼中的字節跳動

    此時此刻(2023年7月),字節跳動從未上市,也從未公布過任何官方的上市計劃;但是這并不妨礙它成為中國最受關注的互聯網公司之一。從2016-17年的抖音強勢崛起,到2018年的“頭騰
  • 慕巖炮轟抖音,百合網今何在?

    來源:價值研究所 作者:Hernanderz“難道就因為自己的一個產品牛逼了,從客服到總裁,都不愿意正視自己產品和運營上的問題,選擇逃避了嗎?”這一番話,出自百合網聯合創
  • 2天漲粉255萬,又一賽道在抖音爆火

    來源:運營研究社作者 | 張知白編輯 | 楊佩汶設計 | 晏談夢潔這個暑期,旅游賽道徹底火了:有的「地方」火了——貴州村超旅游收入 1 個月超過 12 億;有的「博主」火了&m
  • 馮提莫簽約抖音公會 前“斗魚一姐”消失在直播間

    來源:直播觀察提起“馮提莫”這個名字,很多網友或許聽過,但應該不記得她是哪位主播了。其實,作為曾經的“斗魚一姐”,馮提莫在游戲直播的年代影響力不輸于現
  • 超閉合精工鉸鏈 徹底消滅縫隙 三星Galaxy Z Flip5與Galaxy Z Fold5發布

    2023年7月26日,三星電子正式發布了Galaxy Z Flip5與Galaxy Z Fold5。三星新一代折疊屏手機采用超閉合精工鉸鏈,讓折疊后的縫隙不再可見。同時,配合處
  • 榮耀Magicbook V 14 2021曙光藍版本正式開售,擁有觸摸屏

    榮耀 Magicbook V 14 2021 曙光藍版本正式開售,搭載 i7-11390H 處理器與 MX450 顯卡,配備 16GB 內存與 512GB SSD,重 1.48kg,厚 14.5mm,具有 1.5mm 鍵盤鍵程、
Top 主站蜘蛛池模板: 杨浦区| 沙河市| 顺平县| 安阳市| 通渭县| 永善县| 宜昌市| 新津县| 胶南市| 苍溪县| 琼海市| 伊通| 抚宁县| 怀仁县| 平利县| 尼木县| 九江县| 和硕县| 兰考县| 溧水县| 渑池县| 会理县| 张北县| 华池县| 云林县| 朔州市| 宁城县| 密山市| 呼图壁县| 扎赉特旗| 彭州市| 嘉禾县| 健康| 香港| 广安市| 海原县| 喀喇沁旗| 寿阳县| 福鼎市| 禄劝| 康马县|