日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python dataframe 列赋值_dataframe根据新列特征的条件为其赋值,给

發布時間:2025/3/12 python 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python dataframe 列赋值_dataframe根据新列特征的条件为其赋值,给 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

方式一: 直接用比較? ?df['B']=df[['B','C']].max(axis=1)

方式2 : dataframe.apply(自定義函數)

df['label']=df.apply(lambda x: label_get(x.time,x.broad),axis=1)

### 代碼測試樣例

dates = pd.date_range('20130101', periods=6)

df = pd.DataFrame(np.arange(24).reshape((6,4)),index=dates, columns=['time','B','C','D'])

## 測試,labels的生成為 A 在0-5區間內的,B/c 小于等于0.51為0,大于0.8為1 A 5-10區間內的,B/C 小于0.942的為0,大于為1

df['B']=df['B'].astype(float)

df['C']=df['C'].astype(float)

df['broad']=df['B']/df['C']

# df

df.loc['2013-01-02','B']=10

# df['B']=

print(df)

# df['z']=df[['x','y']].max(axis=1) 取兩個特征中的大者做為新特征列的值

df['B']=df[['B','C']].max(axis=1)

df

## 應用函數,根據某幾列特征的條件,對新特征賦值

def label_get(time_length,broad_rate):

if time_length<5:

if broad_rate<=0.51:

return 0

else:

return 1

elif time_length >=5 and time_length <14:

if broad_rate<0.91:

return 0

else:

return 1

else:

return 0

df['label']=df.apply(lambda x: label_get(x.time,x.broad),axis=1)

print(df)

輸出

總結

以上是生活随笔為你收集整理的python dataframe 列赋值_dataframe根据新列特征的条件为其赋值,给的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。