欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

pandas如何修改DataFrame行/列/字段值

 更新時間:2023年08月15日 10:04:13   作者:guotianqing  
這篇文章主要介紹了pandas如何修改DataFrame行/列/字段值問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

pandas修改DataFrame行/列/字段值

增加/修改一列

有如下幾種方法增加一列:

  • 增加具有相同值的一列
import pandas as pd    
dict= {'English':[85,73,98], 'Math':[60,80,58], 'Science':[90,60,74], 'French': [95,87,92] }    
df=pd.DataFrame(dict,index=['2018','2019','2020'])    
print(df)    
print('\n')    
print('Adding new column:')    
print('\n')    
df['Economics']=99    
print(df)    

結果如下:

在這里插入圖片描述

  • 增加定制值的一列,此方法也可以修改原有值
df['Economics']=99  
df['Economics']=[99,85,56]
print(df)    
df.at[:,'Economics']=[78,85,74] 
print(df)    
df.loc[:,'Economics']=[94,87,86]
print(df)    
df2=df.assign(Economics=[92,81,66])    
print(df)    

輸出如下:

在這里插入圖片描述

增加/修改一行

語法基本同列,直接上代碼:

# 增加具有相同值的一行
df.at[2021,:]=100    
print(df)    
# 定制值,該方法也可修改該行原有值
df.loc['2022',:]=[89,21,87,59,22]    
print(df) 

輸出如下:

在這里插入圖片描述

刪除列

代碼:

# 只有刪除一列
del df['Economics']  
# 可刪除多列,有多個參數(shù),其中,axis=1表示列,0表示行,inplace表示是否本地修改,默認False,返回修改后的df,原df不變,True則表示修改原來的df
df.drop(['English','Science'],axis=1,inplace=True)

結果如下:

在這里插入圖片描述

刪除行

使用drop即可:

import pandas as pd    
dict= {'English':[85,73,98], 'Math':[60,80,58], 'Science':[90,60,74], 'French': [95,87,92] }    
df=pd.DataFrame(dict,index=['2018','2019','2020'])    
df.at[2021,:]=100    
df.at[2022,:]=[99,98,97,96]    
print(df)    
print('\n')    
print('Deleting a row:')    
print('\n')    
df.drop(['2019'],axis=0,inplace=True)    
print(df)    
print('\n')    
print('Deleting multiple rows:')    
print('\n')    
df.drop(df.index[[0,2]],axis=0,inplace=True)    
print(df)     

結果如下:

在這里插入圖片描述

修改指定值

可以基于指定的列名和行名修改,也可以根據(jù)指定的行號和列號修改。

示例如下:

import pandas as pd    
dict= {'English':[85,73,98], 'Math':[60,80,58], 'Science':[90,60,74], 'French': [95,87,92] }     
df=pd.DataFrame(dict,index=['2018','2019','2020'])   
print(df)    
# 基于指定的列名和行名修改
using_name=df.Math['2019']=99    
print(df)    
# 根據(jù)指定的行號和列號修改
using_index=df.iloc[2,2]=99    
print(df)    

結果如下:

在這里插入圖片描述

注意:

DataFrame提供了豐富的方法來操作數(shù)據(jù),可以方便地對行列進行增刪改操作。

pandas更改DataFrame中的值

構造DataFrame

import pandas as pd
import numpy as np
dates = pd.date_range('20200315', periods = 5)
df = pd.DataFrame(np.arange(20).reshape((5,4)), index = dates, columns = ['A','B','C','D'])
print(df)
#輸出
? ? ? ? ? ? ?A ? B ? C ? D
2020-03-15 ? 0 ? 1 ? 2 ? 3
2020-03-16 ? 4 ? 5 ? 6 ? 7
2020-03-17 ? 8 ? 9 ?10 ?11
2020-03-18 ?12 ?13 ?14 ?15
2020-03-19 ?16 ?17 ?18 ?19

運用loc、iloc更改值

我們可以利用索引或者標簽確定需要修改值的位置。

df.loc['20200318','C'] = 20200318 ? ? #標簽索引
df.iloc[2,3] = 20200318 ? ?#數(shù)字索引
print(df)
#輸出
? ? ? ? ? ? ?A ? B ? ? ? ? C ? ? ? ? D
2020-03-15 ? 0 ? 1 ? ? ? ? 2 ? ? ? ? 3
2020-03-16 ? 4 ? 5 ? ? ? ? 6 ? ? ? ? 7
2020-03-17 ? 8 ? 9 ? ? ? ?10 ?20200318
2020-03-18 ?12 ?13 ?20200318 ? ? ? ?15
2020-03-19 ?16 ?17 ? ? ? ?18 ? ? ? ?19

運用條件判斷更改值

如果現(xiàn)在的判斷條件是這樣, 我們想要更改B中的數(shù), 而更改的位置是取決于 C的. 對于C大于6的位置. 更改B在相應位置上的數(shù)為0.

df.B[df.C>6] = 0 ? ?#C字段中大于6的那些行在B字段中全都設為0
print(df)
#輸出
? ? ? ? ? ? ?A ?B ? ? ? ? C ? ? ? ? D
2020-03-15 ? 0 ?1 ? ? ? ? 2 ? ? ? ? 3
2020-03-16 ? 4 ?5 ? ? ? ? 6 ? ? ? ? 7
2020-03-17 ? 8 ?0 ? ? ? ?10 ?20200318
2020-03-18 ?12 ?0 ?20200318 ? ? ? ?15
2020-03-19 ?16 ?0 ? ? ? ?18 ? ? ? ?19

在DataFrame中添加一列

如果對整列做批處理, 加上一列 ‘E’, 并將 E 列全改為 NaN, 如下:

df['E'] = np.nan
print(df)
#輸出
? ? ? ? ? ? ?A ? B ? C ? D ? E
2020-03-15 ? 0 ? 1 ? 2 ? 3 NaN
2020-03-16 ? 4 ? 5 ? 6 ? 7 NaN
2020-03-17 ? 8 ? 9 ?10 ?11 NaN
2020-03-18 ?12 ?13 ?14 ?15 NaN
2020-03-19 ?16 ?17 ?18 ?19 NaN

用上面的方法也可以加上 Series 序列(但是長度必須對齊)。

df['F'] = pd.Series([11,22,33,44,55],index = pd.date_range('20200315',periods = 5))
print(df)
#輸出
? ? ? ? ? ? ?A ? B ? C ? D ? E ? F
2020-03-15 ? 0 ? 1 ? 2 ? 3 NaN ?11
2020-03-16 ? 4 ? 5 ? 6 ? 7 NaN ?22
2020-03-17 ? 8 ? 9 ?10 ?11 NaN ?33
2020-03-18 ?12 ?13 ?14 ?15 NaN ?44
2020-03-19 ?16 ?17 ?18 ?19 NaN ?55

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • windows下 兼容Python2和Python3的解決方法

    windows下 兼容Python2和Python3的解決方法

    這篇文章主要介紹了windows下 兼容Python2和Python3的解決方法,需要的朋友可以參考下
    2018-12-12
  • Python和C/C++交互的幾種方法總結

    Python和C/C++交互的幾種方法總結

    這篇文章主要給大家總結介紹了Python和C/C++交互的幾種方法,文中介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面來一起看看吧。
    2017-05-05
  • Python繪圖之turtle庫的基礎語法使用

    Python繪圖之turtle庫的基礎語法使用

    這篇文章主要給大家介紹了關于Python繪圖之turtle庫的基礎語法使用的相關資料, Turtle庫是Python語言中一個很流行的繪制圖像的函數(shù)庫,再繪圖的時候經常需要用到的一個庫需要的朋友可以參考下
    2021-06-06
  • Python使用Matplotlib繪制散點趨勢線的代碼詳解

    Python使用Matplotlib繪制散點趨勢線的代碼詳解

    Matplotlib是一個用于數(shù)據(jù)可視化的強大Python庫,其基本功能之一是創(chuàng)建帶有趨勢線的散點圖,散點圖對于可視化變量之間的關系非常有用,本文將指導您使用Matplotlib繪制散點趨勢線的過程,涵蓋線性和多項式趨勢線,需要的朋友可以參考下
    2025-01-01
  • Python2.7+pytesser實現(xiàn)簡單驗證碼的識別方法

    Python2.7+pytesser實現(xiàn)簡單驗證碼的識別方法

    這篇文章主要介紹了Python2.7+pytesser實現(xiàn)簡單驗證碼的識別方法,簡單分析了pytesser的安裝及Python2.7環(huán)境下實現(xiàn)驗證碼識別的相關操作技巧,需要的朋友可以參考下
    2017-12-12
  • 三行代碼使用Python將視頻轉Gif的方法示例

    三行代碼使用Python將視頻轉Gif的方法示例

    本文主要介紹了三行代碼使用Python將視頻轉Gif的方法示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • python 執(zhí)行函數(shù)的九種方法

    python 執(zhí)行函數(shù)的九種方法

    這篇文章主要介紹了python 執(zhí)行函數(shù)的九種方法,幫助大家更好的理解和學習使用python,感興趣的朋友可以了解下
    2021-03-03
  • 用python3讀取python2的pickle數(shù)據(jù)方式

    用python3讀取python2的pickle數(shù)據(jù)方式

    今天小編就為大家分享一篇用python3讀取python2的pickle數(shù)據(jù)方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • python音頻處理用到的操作的示例代碼

    python音頻處理用到的操作的示例代碼

    本篇文章主要介紹了python音頻處理用到的操作的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • python字典基本操作實例分析

    python字典基本操作實例分析

    這篇文章主要介紹了python字典基本操作,實例分析了Python的打印輸出、刪除、賦值等常用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07

最新評論