国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

用Python的pandas框架操作Excel文件中的數(shù)據(jù)教程

2020-02-23 00:29:39
字體:
來源:轉載
供稿:網(wǎng)友

引言

本文的目的,是向您展示如何使用pandas 來執(zhí)行一些常見的Excel任務。有些例子比較瑣碎,但我覺得展示這些簡單的東西與那些你可以在其他地方找到的復雜功能同等重要。作為額外的福利,我將會進行一些模糊字符串匹配,以此來展示一些小花樣,以及展示pandas是如何利用完整的Python模塊系統(tǒng)去做一些在Python中是簡單,但在Excel中卻很復雜的事情的。

有道理吧?讓我們開始吧。
為某行添加求和項

我要介紹的第一項任務是把某幾列相加然后添加一個總和欄。

首先我們將excel 數(shù)據(jù) 導入到pandas數(shù)據(jù)框架中。
 

import pandas as pdimport numpy as npdf = pd.read_excel("excel-comp-data.xlsx")df.head()

2015331165924361.jpg (1023×362)

我們想要添加一個總和欄來顯示Jan、Feb和Mar三個月的銷售總額。

在Excel和pandas中這都是簡單直接的。對于Excel,我在J列中添加了公式sum(G2:I2)。在Excel中看上去是這樣的:

2015331165956781.jpg (1100×338)

下面,我們是這樣在pandas中操作的:
 

df["total"] = df["Jan"] + df["Feb"] + df["Mar"]df.head()

2015331170032225.jpg (1024×485)

接下來,讓我們對各列計算一些匯總信息以及其他值。如下Excel表所示,我們要做這些工作:

2015331170102927.jpg (1111×345)

如你所見,我們在表示月份的列的第17行添加了SUM(G2:G16),來取得每月的總和。
進行在pandas中進行列級別的分析很簡單。下面是一些例子:
 

df["Jan"].sum(), df["Jan"].mean(),df["Jan"].min(),df["Jan"].max() (1462000, 97466.666666666672, 10000, 162000)

現(xiàn)在我們要把每月的總和相加得到它們的和。這里pandas和Excel有點不同。在Excel的單元格里把每個月的總和相加很簡單。由于pandas需要維護整個DataFrame的完整性,所以需要一些額外的步驟。

首先,建立所有列的總和欄
 

sum_row=df[["Jan","Feb","Mar","total"]].sum()sum_row Jan   1462000Feb   1507000Mar    717000total  3686000dtype: int64

這很符合直覺,不過如果你希望將總和值顯示為表格中的單獨一行,你還需要做一些微調。

我們需要把數(shù)據(jù)進行變換,把這一系列數(shù)字轉換為DataFrame,這樣才能更加容易的把它合并進已經(jīng)存在的數(shù)據(jù)中。T 函數(shù)可以讓我們把按行排列的數(shù)據(jù)變換為按列排列。
 

df_sum=pd.DataFrame(data=sum_row).Tdf_sum            
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 吕梁市| 额济纳旗| 台北县| 库尔勒市| 高淳县| 长葛市| 凉山| 禹州市| 滨州市| 金华市| 新河县| 自贡市| 湖州市| 都安| 沁源县| 万荣县| 凤台县| 北海市| 维西| 长治县| 海宁市| 西盟| 江口县| 沐川县| 花垣县| 响水县| 牙克石市| 杭锦后旗| 江门市| 台南县| 庆元县| 泸州市| 阜平县| 墨江| 山西省| 丹东市| 鲁甸县| 宁明县| 抚松县| 惠东县| 通化市|