dataframe類型是如何插入一行或一列數(shù)據(jù)的呢?這個(gè)需求在本文中將會(huì)進(jìn)行討論。相比較ndarray類型的同樣的“數(shù)據(jù)插入”需求,dataframe的實(shí)現(xiàn)方式,則不是很好用。本文以一個(gè)dataframe類型變量為例,測試插入一行數(shù)據(jù)或者一列數(shù)據(jù)的方式方法。測試環(huán)境:win10,python@3.11.0,numpy@1.24.2,pandas@1.5.3。
某個(gè)位置插入列
因?yàn)閐ataframe的insert(),不走尋常路。
- 效果就是插入一列數(shù)據(jù),并沒有axis=這個(gè)參數(shù)來區(qū)分?jǐn)?shù)據(jù)流的方向。
- 并且默認(rèn)效果就是替換原變量,并不是return
新變量,并沒有個(gè)inplace參數(shù)進(jìn)行控制。
測試代碼:
import pandas as pd
df = pd.DataFrame({"姓名": ["老許", "虎子"], "重量": ["10", "15"]})
df.insert(1, "種類", ["貓", "狗"])
print(df)
輸出:
姓名 種類 重量
0 老許 貓 10
1 虎子 狗 15
這個(gè)dataframe將作為原始數(shù)據(jù),參與本文后續(xù)的代碼實(shí)驗(yàn)。
尾部插入列
這個(gè)代碼是最簡單的,灰常簡單。測試代碼:
import pandas as pd
df = pd.DataFrame({"姓名": ["老許", "虎子"], "重量": ["10", "15"]})
df["顏色"] = ['黑色', '黃色']
print(df)
輸出:
姓名 重量 顏色
0 老許 10 黑色
1 虎子 15 黃色
某個(gè)位置插入行
下面在第二行(編號(hào)1)位置插入兩條數(shù)據(jù)。實(shí)際上先對(duì)dataframe在編號(hào)1位置進(jìn)行了拆分,然后再在拆分的兩部分中間放入了新的數(shù)據(jù),最終執(zhí)行合并操作。
import pandas as pd
df = pd.DataFrame({"姓名": ["老許", "虎子"],"種類": ["貓", "狗"], "重量": ["10", "15"]})
data = pd.DataFrame({
'姓名': ["老許二代", "二賴子"],
'種類': ["黑貓", "花狗"],
'重量': [3, 15]
})
df2 = pd.concat([df.loc[:0], data, df.loc[1:]]).reset_index(drop=True)
print(df2)
輸出
姓名 種類 重量
0 老許 貓 10
1 老許二代 黑貓 3
2 二賴子 花狗 15
3 虎子 狗 15
尾部插入行
dataframe類型官方,對(duì)于插入新的一行數(shù)據(jù)的需求,就僅僅提供了一個(gè)append()操作,可以疊加新數(shù)據(jù)到尾部。
import pandas as pd
df = pd.DataFrame({"姓名": ["老許", "虎子"],"種類": ["貓", "狗"], "重量": ["10", "15"]})
data = pd.DataFrame({
'姓名': ["老許二代", "二賴子"],
'種類': ["黑貓", "花狗"],
'重量': [3, 15]
})
df3 = df.append(data, ignore_index=True)
print(df3)
輸出文章來源:http://www.zghlxwxcb.cn/news/detail-772519.html
姓名 種類 重量
0 老許 貓 10
1 虎子 狗 15
2 老許二代 黑貓 3
3 二賴子 花狗 15
文章來源地址http://www.zghlxwxcb.cn/news/detail-772519.html
到了這里,關(guān)于python的pandas中如何在dataframe中插入一行或一列數(shù)據(jù)?的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!