python条件替换_python-根据其他列中的条件替换pandas列中的某些特定值
这是我在StackOverflow上遇到的第一个问题,所以让我知道是否应该以其他方式制定任何内容…
我想替换pandas Dataframe列中的某些值,具体取决于与另一列中的值相关的条件,但是如果条件为False,则保留原始值.例如:
import pandas as pd
df=pd.DataFrame({'col1':['A','B','C','B'], 'col2':['z','x','x','x']},
columns=['col1','col2'])
df =
col1 col2
0 A z
1 B x
2 C x
3 B x
说,如果col1中的值为“ B”或“ C”,我想将col2中的值替换为“ q”,但是如果col1中的值不是,则保留原始值(“ z”,“ x”) B或C.实际上,我有一个更大的DataFrame,其中col1中有数百个唯一值,并且想要替换col2中的其中约20个值.
我当前的解决方案是创建一个字典,使用col1作为键,使用col2作为值,然后:
dict1.update({'B':'q'})
df[col2] = df[col1].map(dict1)
但是,仅当两列中的值完全相关(或者col1中的值是唯一的)时,此技巧才有效.
所以我想知道是否有更优雅的解决方案.因此,如果col1符合特定条件,则仅替换col2中的值,否则保留原始值.
总结
以上是生活随笔为你收集整理的python条件替换_python-根据其他列中的条件替换pandas列中的某些特定值的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: xm文件怎样转换成mp3_酷狗音乐如何将
- 下一篇: python提供了_Python中 为我