[英]Creating new column based on multiple columns pandas
我正在嘗試基於 pandas 中的多個列創建類別,但它需要永遠運行,所以我不確定它是否正確。 我離開了 30 分鍾,但仍在運行,所以停止了它。 我正在嘗試基於其他幾列創建一個新列(在我的實際數據中它大約是 15 列)。 但是,當我嘗試使用較小的數據集時,它非常快。 有什么建議么?
other_cols = ['col1', 'col2', 'col3', 'col4', 'col5']
def labels(row):
if ((row['col 6'] > 1) & (row[other_cols] < 1)).all():
return 'Yes'
if ((row['col 6'] >1) & (row['col 7'] >1) & (row[other_cols] <1)).all():
return 'Maybe'
if ((row['col 6'] <1) & (row['col 7']>1) & (row[other_cols] <1)).all():
return 'no'
df['category'] = df.apply(lambda row: labels(row), axis=1)
您可以嘗試一下:
ther_cols = ['col1', 'col2', 'col3', 'col4', 'col5']
def labels(row):
elif ((row['col 6'] > 1) & (row[other_cols] < 1)).all():
row['category'] = 'Yes'
elif ((row['col 6'] >1) & (row['col 7'] >1) & (row[other_cols] <1)).all():
row['category'] = 'Maybe'
elif ((row['col 6'] <1) & (row['col 7']>1) & (row[other_cols] <1)).all():
row['category'] = 'no'
else:
row['category'] = ''
df = df.apply(labels, axis=1)
你的數據集的大小是多少?
對不起,我不能評論我還是新來的
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.