首先使用分組的思想,對(duì)a列b值下的c值進(jìn)行整合觀察。
pay = df1.groupby('*位')["c列變量名"].describe()
pay
這里想要補(bǔ)充的一點(diǎn)是其他的求分位數(shù)的方法。
其他求分位數(shù)的方法n = np.percentile(z_df['天數(shù)'],(20,40), interpolation='midpoint')
print('天數(shù)分位數(shù)',a)
這句求解分位數(shù)的代碼非常靈活,可以通過(guò)修改數(shù)值而達(dá)到自由求解不同分位數(shù)的方法。
第一列被作為了索引值無(wú)法引用變量怎么辦?得到描述性統(tǒng)計(jì)結(jié)果表如下所示,可以看到,結(jié)果的第一列被作為了索引值,導(dǎo)致在后續(xù)代碼中想引用這個(gè)變量卻無(wú)法引用。
復(fù)制索引列,新增一列變量:
cols = ['*位'] + list(df1.columns)
dangpay.index += 1
dangpay['*位'] = dangpay.index
取出來(lái)的值還是表格形式怎么辦?
這個(gè)時(shí)候我想取【*位】為22的中位數(shù)值,得到的結(jié)果還是表格的形式,并不能賦值給某個(gè)變量。
因此需要對(duì)該語(yǔ)句加上后綴,只取其數(shù)值。只取值的情況,在變量搜索后加**.values**就好
res = dangpay[dangpay.*位==a][['50%']].values
或者
import numpy as np
new_res = res.astype(np.int)
取出的便只是數(shù)值啦!
填補(bǔ)空值的部分就很簡(jiǎn)單了。這里要注意的一點(diǎn)是,判斷是否為空的語(yǔ)句形式:
if pd.isnull(df1.iloc[i,-1]) ==True
綜合填補(bǔ)空值的部分為:
lis = []
for i in range (len(df1)):
if pd.isnull(df1.iloc[i,-1]) ==True:#倒數(shù)第一列變量
a = df1.iloc[i,5]#第五列變量
# 取出*位數(shù)為a的中位數(shù)值
zws = dangpay[dangpay.*位==a][['50%']].values
df1.iloc[i,-1] = int(zws)
lis.append(df1.iloc[i,-1])
print(df1.iloc[i,-1])
else:
lis.append(df1.iloc[i,-1])
print(df1.iloc[i,-1])
df1['aaa'] = lis
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧
當(dāng)前名稱:python中如何提取a列b值下的c列對(duì)應(yīng)值中位數(shù)?-創(chuàng)新互聯(lián)
網(wǎng)站鏈接:http://jinyejixie.com/article4/dijioe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、標(biāo)簽優(yōu)化、網(wǎng)站導(dǎo)航、網(wǎng)站收錄、面包屑導(dǎo)航、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容