Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python替换字符串_Python_Pandas - Fatal编程技术网

Python替换字符串

Python替换字符串,python,pandas,Python,Pandas,给定此数据帧…: DF = pd.DataFrame({'COL1': ['A', 'B', 'C', 'D','D','D'], 'COL2': [11032, 1960, 11400, 11355, 8, 7], 'year': ['2016', '2017', '2018', '2019', '2020', '2021']}) DF COL1 COL2 year 0 A 11032 2

给定此数据帧…:

DF = pd.DataFrame({'COL1': ['A', 'B', 'C', 'D','D','D'], 
                   'COL2': [11032, 1960, 11400, 11355, 8, 7], 
                   'year': ['2016', '2017', '2018', '2019', '2020', '2021']})
DF

   COL1 COL2    year
0   A   11032   2016
1   B   1960    2017
2   C   11400   2018
3   D   11355   2019
4   D   8       2020
5   D   7       2021
如果满足以下条件:

  • COL1='D'
  • 年份='2021'(请将其视为字符串)
  • 然后将
    COL2
    中的值更改为
    100


    或者,如果将年份视为int怎么办?

    这是的典型用例。当为行选择选择多个条件时,
    cond1和(cond2或cond3)
    模式的示例将是
    df.loc[(条件1)和((条件2)|(条件3),“所选列”]

    DF.loc[(DF.COL1 == 'D') & (DF.year == '2021'), 'COL2'] = 100
    
    如果年份是整数,您可以简单地对其进行如下修改,以捕获整数和字符串:

    DF.loc[(DF.COL1 == 'D') & (DF.year.astype(int) == 2021), 'COL2'] = 100
    

    如果我想用列名代替“D”和2021来迭代包含“D”和“2021”的值的两列,并更改“COL2”中每行对应的值,该怎么办?我不确定我是否遵循了。您能否发布一个新问题,其中包含示例数据和所需结果?当然;发布在此处: