DataFrame:查找指定的行,并将数值赋给同一行的另一列
DataFrame: To find a specified row and assign a numeric value to another column in the same row
当条件表达式c1 = 2017-04-01成立时,我们要用数字300.0代替c3。
因此,300.0 被替换为 r3 和 c3。
但是,条件表达式不是 r3
columns: c1 = 2017-04-01 是要整理的r3,所以就变成了line.
import pandas as pd
df=pd.DataFrame(
[["2017-02-01",10.,100.],
["2017-03-01",20.,'Nan'],
["2017-04-01",30.,'Nan'],
["2017-05-01",40.,'Nan']],
index=['r1','r2','r3','r4'],
columns=['c1','c2','c3']
)
df
###########################
c1 c2 c3
r1 2017-02-01 10.0 100
r2 2017-03-01 20.0 Nan
r3 2017-04-01 30.0 Nan
r4 2017-05-01 40.0 Nan
我该怎么办?
一种选择是使用
df.loc[(df['c1'] == '2017-04-01'), ['column_you_need_to_change']] = 1.
以上行查找其 c1 列的值为“2017-04-01”的所有行,并将所需列的值更改为数字,在上述情况下为 1。
希望对您有所帮助。
当条件表达式c1 = 2017-04-01成立时,我们要用数字300.0代替c3。
因此,300.0 被替换为 r3 和 c3。 但是,条件表达式不是 r3 columns: c1 = 2017-04-01 是要整理的r3,所以就变成了line.
import pandas as pd
df=pd.DataFrame(
[["2017-02-01",10.,100.],
["2017-03-01",20.,'Nan'],
["2017-04-01",30.,'Nan'],
["2017-05-01",40.,'Nan']],
index=['r1','r2','r3','r4'],
columns=['c1','c2','c3']
)
df
###########################
c1 c2 c3
r1 2017-02-01 10.0 100
r2 2017-03-01 20.0 Nan
r3 2017-04-01 30.0 Nan
r4 2017-05-01 40.0 Nan
我该怎么办?
一种选择是使用
df.loc[(df['c1'] == '2017-04-01'), ['column_you_need_to_change']] = 1.
以上行查找其 c1 列的值为“2017-04-01”的所有行,并将所需列的值更改为数字,在上述情况下为 1。
希望对您有所帮助。