在Pandas?DataFrame中插入一列的方法實(shí)例
引言
通常,您可能希望在 Pandas DataFrame 中插入一個(gè)新列。幸運(yùn)的是,使用 pandas insert()函數(shù)很容易做到這一點(diǎn),該函數(shù)使用以下語(yǔ)法:
insert(loc, column, value, allow_duplicates=False)
在哪里:
- loc: 插入列的索引。第一列是 0。
- column: 賦予新列的名稱。
- value: 新列的值數(shù)組。
- allow_duplicates: 是否允許新列名匹配現(xiàn)有列名。默認(rèn)值為假。
本教程展示了如何在實(shí)踐中使用此功能的幾個(gè)示例。
示例 1:插入新列作為第一列
以下代碼顯示了如何插入一個(gè)新列作為現(xiàn)有 DataFrame 的第一列:
import pandas as pd
#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
'assists': [5, 7, 7, 9, 12],
'rebounds': [11, 8, 10, 6, 6]})
#view DataFrame
df
points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6
#insert new column 'player' as first column
player_vals = ['A', 'B', 'C', 'D', 'E']
df.insert(loc=0, column='player', value=player_vals)
df
player points assists rebounds
0 A 25 5 11
1 B 12 7 8
2 C 15 7 10
3 D 14 9 6
4 E 19 12 6示例 2:插入新列作為中間列
以下代碼顯示了如何插入一個(gè)新列作為現(xiàn)有 DataFrame 的第三列:
import pandas as pd
#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
'assists': [5, 7, 7, 9, 12],
'rebounds': [11, 8, 10, 6, 6]})
#insert new column 'player' as third column
player_vals = ['A', 'B', 'C', 'D', 'E']
df.insert(loc=2, column='player', value=player_vals)
df
points assists player rebounds
0 25 5 A 11
1 12 7 B 8
2 15 7 C 10
3 14 9 D 6
4 19 12 E 6示例 3:插入新列作為最后一列
以下代碼顯示了如何插入一個(gè)新列作為現(xiàn)有 DataFrame 的最后一列:
import pandas as pd
#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
'assists': [5, 7, 7, 9, 12],
'rebounds': [11, 8, 10, 6, 6]})
#insert new column 'player' as last column
player_vals = ['A', 'B', 'C', 'D', 'E']
df.insert(loc=len(df.columns), column='player', value=player_vals)
df
points assists player rebounds
0 25 5 A 11
1 12 7 B 8
2 15 7 C 10
3 14 9 D 6
4 19 12 E 6請(qǐng)注意,使用 len(df.columns) 允許您在任何數(shù)據(jù)幀中插入一個(gè)新列作為最后一列,無(wú)論它可能有多少列。
您可以在此處找到 insert() 函數(shù)的完整文檔。
補(bǔ)充:按條件選擇分組分別賦值
按條件先選擇數(shù)據(jù),然后對(duì)這部分?jǐn)?shù)據(jù)賦值新列
實(shí)例:高低溫差大于10度,則認(rèn)為溫差大
# 先創(chuàng)建空列(這是第一種創(chuàng)建新列的方法) df['wencha_type'] = '' df.loc[df["bWendu"]-df["yWendu"]>10, "wencha_type"] = "溫差大" df.loc[df["bWendu"]-df["yWendu"]<=10, "wencha_type"] = "溫差正常"
總結(jié)
到此這篇關(guān)于在Pandas DataFrame中插入一列的文章就介紹到這了,更多相關(guān)Pandas DataFrame插入列內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實(shí)現(xiàn)對(duì)比兩個(gè)Excel數(shù)據(jù)內(nèi)容并標(biāo)記出不同
日常工作中需要對(duì)比兩個(gè)Excel工作表中的數(shù)據(jù)差異是很不方便的,使用python來(lái)做就比較簡(jiǎn)單了!本文為大家介紹了python實(shí)現(xiàn)對(duì)比兩個(gè)Excel的數(shù)據(jù)內(nèi)容并標(biāo)記出不同數(shù)據(jù)的示例代碼,需要的可以參考一下2022-12-12
python機(jī)器學(xué)習(xí)Logistic回歸原理推導(dǎo)
這篇文章主要為大家介紹了python機(jī)器學(xué)習(xí)Logistic回歸原理推導(dǎo),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06
python內(nèi)置函數(shù)map/filter/reduce詳解
在Python中,map(), filter(), 和 reduce() 是內(nèi)置的高級(jí)函數(shù)(實(shí)際是class),用于處理可迭代對(duì)象(如列表、元組等)的元素,這篇文章主要介紹了python內(nèi)置函數(shù)map/filter/reduce的相關(guān)知識(shí),需要的朋友可以參考下2024-05-05
python代碼 FTP備份交換機(jī)配置腳本實(shí)例解析
這篇文章主要介紹了python代碼 FTP備份交換機(jī)配置腳本實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08
使用Python如何測(cè)試InnoDB與MyISAM的讀寫性能
網(wǎng)上有很多評(píng)論myisam和innodb讀寫性能對(duì)比,所以下面這篇文章主要給大家介紹了關(guān)于使用Python如何測(cè)試InnoDB與MyISAM讀寫性能的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2018-09-09
教你利用Python+Turtle繪制簡(jiǎn)易版愛(ài)心表白
這篇文章主要介紹了教你利用Python+Turtle繪制簡(jiǎn)易版愛(ài)心表白,文中有非常詳細(xì)的代碼示例,對(duì)想要和男朋友或者女朋友表白的小伙伴們有很大幫助喲,需要的朋友可以參考下2021-04-04

