<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
發現自己學習python 的各種庫老是容易忘記,所有想利用這個平臺,記錄和分享一下學習時候的知識點,以後也能及時的複習,最近學習pandas,那我們來看看pandas新增資料的一些方法
建立一個dataframe
為dataframe增加一列新資料,需要確保增加列的長度與原資料保持一致
如果是增加一列相同資料可以直接輸入
df['level'] = 1
插入的資料是需要通過源資料進行計算的(eval這個方法感覺比較好用)
df.eval('grade_level = grade * level',inplace = True)
使用insert函數可以在指定列新增列資料,這個函數有好幾個引數,使用更加靈活
df.insert(loc, column, value, allow_duplicates=False)
增加列資料的方法還有很多,我只把自己比較常用的記錄了下來
比較多的方法有 loc 、iloc、append都行,先看loc這個方法,它是通過 df.loc[index名稱] = [對應的資料],這個方法要主要index如果是與原表中有重複,則會將原資料修改,如果沒有重複的話,就是在最後面新增對應資料,其中的index名稱是根據輸入的寫入,需要注意!
第二個是通過df.iloc[index位置] = [對應資料] 進行修改這個方法是對原有資料進行修改,並不是增加一行資料
使用append()函數新增一行資料,其中ignore_index=True,否則報錯
append()往往做法比較多的是新增一個另外一個dataframe的資料到原來資料上,爬蟲時候用得比較多,將每一頁的資料儲存到一個臨時的dataframe中,將這個臨時的dataframe資料插入到總的dataframe後面,最後得到總的資料,且效率較高
當然還有concat、merge等方法可以達到相同的效果,下次有機會在繼續學習
pandas中一個Dataframe,經常需要根據其中一列再新建一列,比如一個常見的例子:需要根據分數來確定等級範圍,下面我們就來看一下怎麼實現。
def getlevel(score): if score < 60: return "bad" elif score < 80: return "mid" else: return "good" def test(): data = {'name': ['lili', 'lucy', 'tracy', 'tony', 'mike'], 'score': [85, 61, 75, 49, 90] } df = pd.DataFrame(data=data) # 兩種方式都可以 # df['level'] = df.apply(lambda x: getlevel(x['score']), axis=1) df['level'] = df.apply(lambda x: getlevel(x.score), axis=1) print(df)
上面程式碼執行結果
name score level
0 lili 85 good
1 lucy 61 mid
2 tracy 75 mid
3 tony 49 bad
4 mike 90 good
要實現上面的功能,主要是使用到dataframe中的apply方法。
上面的程式碼,對dataframe新增加一列名為level,level由分數一列而來,如果小於60分為bad,60-80之間為mid,80以上為good。
其中axis=1表示原有dataframe的行不變,列的維數發生改變。
到此這篇關於Python Pandas多種新增行列資料方法的文章就介紹到這了,更多相關Pandas新增行列資料內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45