亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如果整數值滿足特定條件,則替換為數據框的列

如果整數值滿足特定條件,則替換為數據框的列

qq_笑_17 2023-02-22 15:41:44
Age我需要按在數據框上替換的某些年齡組對它們進行分組,而不是使用數字import pandas as pd# intialise data of lists. data = {'Name':['Tom', 'nick', 'krish', 'jack','Ann','James'],         'Age':[20, 21, 45, 58,34,60]}   # Create DataFrame df = pd.DataFrame(data)這是我試過的:if df['Age'] < 20:    df['Age']= df['Age'].replace([<20],'<20')if df['Age'] >= 20 & >40:    df['Age']= df['Age'].replace([>=20&<40],'>=20&<40')if df['Age'] >=40:    df['Age']= df['Age'].replace([>=40],'>=40')
查看完整描述

1 回答

?
慕后森

TA貢獻1802條經驗 獲得超5個贊

使用np.select(setofconditions, matchingchoices)


import numpy as np

c1=df['Age'] < 20

c2=df['Age'].between(20,40)

c3=df['Age'] >=40

cond=[c1,c2,c3]

choice=['<20','>=20&<40','>=40']

df['agerange']=np.select(cond,choice)


     Name  Age  agerange

0    Tom   20  >=20&<40

1   nick   21  >=20&<40

2  krish   45      >=40

3   jack   58      >=40

4    Ann   34  >=20&<40

5  James   60      >=40


查看完整回答
反對 回復 2023-02-22
  • 1 回答
  • 0 關注
  • 89 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號