日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
pandas改變數(shù)據(jù)框索引

在Python的數(shù)據(jù)處理庫(kù)pandas中,數(shù)據(jù)框(DataFrame)是一種二維的表格型數(shù)據(jù)結(jié)構(gòu),它既有行索引也有列索引,在實(shí)際的數(shù)據(jù)分析過(guò)程中,我們可能需要對(duì)數(shù)據(jù)框的索引進(jìn)行一些操作,例如改變索引的名稱、順序等,本文將詳細(xì)介紹如何使用pandas庫(kù)來(lái)改變數(shù)據(jù)框的索引。

1、使用set_index()方法改變索引

set_index()方法是pandas中最常用的改變數(shù)據(jù)框索引的方法,它可以將一個(gè)或多個(gè)現(xiàn)有的列設(shè)置為新的索引,該方法的基本語(yǔ)法如下:

dataframe.set_index(keys, drop=True, inplace=False, verify_integrity=False, sort_values=False, append=True)

參數(shù)說(shuō)明:

keys:用于設(shè)置新索引的列名,可以是單個(gè)列名或列名列表。

drop:布爾值,表示是否刪除原來(lái)的索引,默認(rèn)為True。

inplace:布爾值,表示是否在原數(shù)據(jù)框上進(jìn)行修改,默認(rèn)為False,如果為True,則直接在原數(shù)據(jù)框上進(jìn)行修改;如果為False,則返回一個(gè)新的數(shù)據(jù)框。

verify_integrity:布爾值,表示是否檢查新索引是否唯一和完整,默認(rèn)為False。

sort_values:布爾值,表示是否對(duì)新索引進(jìn)行排序,默認(rèn)為False。

append:布爾值,表示是否將舊索引的值附加到新索引上,默認(rèn)為True。

示例:

import pandas as pd
創(chuàng)建一個(gè)數(shù)據(jù)框
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)
將列'A'設(shè)置為新的索引
df.set_index('A', inplace=True)
print(df)

輸出結(jié)果:

     B  C
A          
1   4   7
2   5   8
3   6   9

2、使用rename()方法重命名索引

rename()方法可以用于重命名數(shù)據(jù)框的行索引和列索引,該方法的基本語(yǔ)法如下:

dataframe.rename(columns=None, index=None, inplace=False)

參數(shù)說(shuō)明:

columns:用于重命名列名的字典,鍵為原列名,值為新列名,可以為空,表示不重命名任何列。

index:用于重命名行索引的字典,鍵為原行名,值為新行名,可以為空,表示不重命名任何行。

inplace:布爾值,表示是否在原數(shù)據(jù)框上進(jìn)行修改,默認(rèn)為False,如果為True,則直接在原數(shù)據(jù)框上進(jìn)行修改;如果為False,則返回一個(gè)新的數(shù)據(jù)框。

示例:

import pandas as pd
創(chuàng)建一個(gè)數(shù)據(jù)框
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)
重命名列名為'X'、'Y'、'Z'和行名為'x'、'y'、'z'
df.rename(columns={'A': 'X', 'B': 'Y', 'C': 'Z'}, index={0: 'x', 1: 'y', 2: 'z'})
print(df)

輸出結(jié)果:

     X  Y   Z
x      1   4   7
y      2   5   8
z      3   6   9

3、使用reset_index()方法重置索引

reset_index()方法可以將數(shù)據(jù)框的索引轉(zhuǎn)換為普通的列,并生成新的整數(shù)索引,該方法的基本語(yǔ)法如下:

dataframe.reset_index(level=None, drop=True, inplace=False)

參數(shù)說(shuō)明:

level:用于指定要重置的索引級(jí)別,可以為None、0或1,默認(rèn)為None,表示重置所有級(jí)別的索引,如果為0或1,則只重置指定級(jí)別的索引,可以為多個(gè)級(jí)別,用逗號(hào)分隔,如果不指定任何級(jí)別,則默認(rèn)重置所有級(jí)別的索引。

drop:布爾值,表示是否刪除原來(lái)的索引,默認(rèn)為True,如果為True,則刪除原來(lái)的索引;如果為False,則保留原來(lái)的索引作為新的一列,默認(rèn)情況下,原始索引被添加為新列“index”,如果要更改此名稱,請(qǐng)使用“name”參數(shù),請(qǐng)注意,僅當(dāng)您希望保留多級(jí)索引時(shí)才應(yīng)將其保留為False,否則建議使用“inplace”參數(shù)來(lái)避免復(fù)制數(shù)據(jù)框,有關(guān)詳細(xì)信息,請(qǐng)參閱MultiIndex部分,請(qǐng)注意“drop”和“inplace”不能同時(shí)為True,如果兩者都為True,則會(huì)引發(fā)錯(cuò)誤,如果您想在原地重置索引并刪除它,請(qǐng)首先調(diào)用“reset_index(inplace=True)”,然后調(diào)用“drop(columns=’index’)”,這會(huì)創(chuàng)建一個(gè)全新的副本并保留原始數(shù)據(jù)框不變,這是更安全的方法,有關(guān)詳細(xì)信息,請(qǐng)參閱文檔中的警告部分,有關(guān)更多信息和示例,請(qǐng)參見(jiàn)MultiIndex部分。


文章題目:pandas改變數(shù)據(jù)框索引
網(wǎng)站地址:http://m.5511xx.com/article/cohdojs.html