python如何將兩個數(shù)據(jù)表中的對應數(shù)據(jù)相加
python兩個數(shù)據(jù)表中的對應數(shù)據(jù)相加
記錄一下自己的學習過程。
有很多省份的數(shù)據(jù),想要求全國的綜合。
這些數(shù)據(jù)都分別存在csv里。
如下:



我希望把全部省份加起來, 算一個全國總和。這時候需要用到數(shù)據(jù)表對應值相加。
代碼如下:
先讀進來一個數(shù)據(jù)表,比如
df1 是湖北的。
在df1 的基礎上創(chuàng)建一個空表。
df_empty = pd.DataFrame(np.zeros(df1.shape), columns=df1.columns, index=df1.index)
這樣df_empty是

然后寫一個for循環(huán),逐個加進來。
for i in range(len(result_list)):
print("\n************\n")
print(result_list[i])
print(prov_list[i])
dfi = pd.read_csv(os.path.join(result_data_dir, result_list[i]), index_col='year')
print(dfi)
dfi = dfi.fillna(0)
print(i)
df_empty = df_empty.add(dfi, fill_value = 0)
print(df_empty)中間有很多打印的內容,其實關鍵的是其中兩句。
dfi = pd.read_csv(os.path.join(result_data_dir, result_list[i]), index_col='year')
這一句保證讀進來的數(shù)據(jù)索引相同,列相同。
相加,
df_empty = df_empty.add(dfi, fill_value = 0)
這一句可以讓數(shù)據(jù)表相加,相當于矩陣的點加。
得到最后結果如下

其中fill_value=0,不能省略,因為如果不加,那么add的時候,會把一些有缺失的格變成缺失,最后加起來會有很多缺失。
看樣子原來沒有的行,比如2010,會自動添加進去。總和數(shù)據(jù)表里多了2010這一行。
三種Python中兩個列表數(shù)字“相加”方法
最近我在用Python處理數(shù)據(jù)時,需要將列表數(shù)據(jù)相加實現(xiàn)“累積”效果的。
需要注意,我這里所說的列表相加,并非是下面這種“列表元素相加”的情況。
list_1 = [1, 2, 3] list_2 = [4, 5, 6] print(list_1 + list_2)
輸出:
[1, 2, 3, 4, 5, 6]
注:列表元素的添加方式中,除了+號還有append()、extend()等方法。
我們目前的兩個列表元素都是int整數(shù)型,其次它們長度相同,我們想要對應索引位置元素相加,生成新的列表list_3。
for循環(huán)
在交互式環(huán)境中輸入如下命令:
list_1 = [1, 2, 3] list_2 = [4, 5, 6] list_3 = [] for index, item in enumerate(list_1): ? ? list_3.append(item + list_2[index]) print(list_3)
輸出:
[5, 7, 9]
map()
map() 是 Python 內置的高階函數(shù),它接收一個函數(shù) f 和一個 list,并通過把函數(shù) f 依次作用在 list 的每個元素上,得到一個新的 list 并返回。
在交互式環(huán)境中輸入如下命令:
list_1 = [1, 2, 3] list_2 = [4, 5, 6] list_3 = list(map(lambda x, y: x + y, list_1, list_2)) print(list_3)
輸出:
[5, 7, 9]
numpy
在交互式環(huán)境中輸入如下命令:
list_1 = [1, 2, 3] list_2 = [4, 5, 6] import numpy as np list_3 = list(np.add(list_1, list_2)) print(list_3)
輸出:
[5, 7, 9]
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
python中使用百度音樂搜索的api下載指定歌曲的lrc歌詞
這篇文章主要介紹了python中使用百度音樂搜索的api下載指定歌曲的lrc歌詞,同時也分析出了歌曲的下載地址,需要的朋友可以參考下2014-07-07
python機器學習Github已達8.9Kstars模型解釋器LIME
這篇文章主要為大家介紹了Github已達8.9Kstars的最佳模型解釋器LIME的使用示例及功能詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-11-11
python 設置xlabel,ylabel 坐標軸字體大小,字體類型
這篇文章主要介紹了python 設置xlabel,ylabel 坐標軸字體大小,字體類型,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-07-07
python查詢MySQL將數(shù)據(jù)寫入Excel
這篇文章主要介紹了python如何查詢MySQL將數(shù)據(jù)寫入Excel,幫助大家利用python高效的辦公,感興趣的朋友可以了解下2020-10-10
Python+OpenCV實現(xiàn)角度測量的示例代碼
本文介紹如何使用python語言實現(xiàn)角度測量,程序包括鼠標選點、直線斜率計算、角度計算三個子程序和一個主程序,感興趣的可以了解一下2022-03-03

