我试着根据像这样的数据框中一个人的大小推断出一个分类:Size
1 80000
2 8000000
3 8000000000
...
我希望它看起来像这样:Size Classification
1 80000 <1m
2 8000000 1-10m
3 8000000000 >1bi
...
我知道理想的过程是应用这样的lambda函数:df['Classification']=df['Size'].apply(lambda x: "<1m" if x<1000000 else "1-10m" if 1000000
我检查了一些关于lambda函数here is an example link中多个ifs的帖子,但是synthax在多个ifs语句中由于某些原因不适合我,但它在一个if条件下工作。
所以我尝试了这个“非常优雅”的解决方案:df['Classification']=df['Size'].apply(lambda x: "<1m" if x<1000000 else pass)
df['Classification']=df['Size'].apply(lambda x: "1-10m" if 1000000 < x < 10000000 else pass)
df['Classification']=df['Size'].apply(lambda x: "10-50m" if 10000000 < x < 50000000 else pass)
df['Classification']=df['Size