python-3.x - 根据另一列的对应行重命名一列的行
问题描述
我有一个像这样的熊猫数据框
GRUPPO FORMATO | Creative Size
_______________________________
'Lightbox' | '200x100'
'Lightbox' | '100x200'
'Something' | 'hello'
如果 GRUPPO FORMATO 的行等于“Lightbox”,我想使用以下架构重新标记“Creative Size”的行:字符串“Lightbox”和列 Creative Size 中的相应字符串。所需的输出是:
GRUPPO FORMATO | Creative Size
_______________________________
'Lightbox' | 'Lightbox 200x100'
'Lightbox' | 'Lightbox 100x200'
'Something' | 'hello'
我试过这个但不起作用:
db_new.loc[db_new['GRUPPO FORMATO']=='Lightbox', 'Creative Size']= str('Lightbox '+ db_new['Creative Size])
有什么帮助吗?
解决方案
您可以尝试使用np.where:
df['Creative Size'] = np.where(df['GRUPPO FORMATO'] == 'Lightbox',
df['GRUPPO FORMATO'] + ' ' + df['Creative Size'],
df['Creative Size'])
print(df)
GRUPPO FORMATO Creative Size
0 Lightbox Lightbox 200x100
1 Lightbox Lightbox 100x200
2 Something hello
推荐阅读
- javascript - Charts Area JS v2:如何设置单位?
- mongodb - Mongo 聚合 - 遍历文档中的多个对象并仅返回键:值
- javascript - 有没有办法使换行符(\n)的高度小于文本的行高?
- python - 如何使用制表 python 包在终端中显示漂亮的表格?
- wordpress - bncert 说我的域解析为不同的 IP 地址,但事实并非如此
- xamarin - Xamarin - 如何从 AppStore 下载崩溃报告?
- database - 获取数组内容作为数组中多个对象的特征
- rust - 具有互斥的编译器重新排序部分
- gradle - 无法解析 Gradle 脚本插件中的插件(外部 Gradle 文件)
- css - 样式不适用于 Angular 中的子子路由