我有以下数据框:
Column1 Default_Val
1 A 2
2 B 2
3 C 2
4 D 2
5 E 2
...
colnames: "Column1" "Default_Val"
rownames: "1" "2" "3" "4" "5"
此数据框是我的函数的一部分,此函数根据某些if更改默认值。
我想概括分配过程,因为我想支持此数据框的不同列名。
请告知如何在不依赖列名的情况下更改默认值?
这是我到目前为止所做的:
df[Column1 == "A","Default_Val"]
[1] 2
df[Column1 == "A","Default_Val"] = 2
df[Column1 == "A","Default_Val"]
[1] 1
我想要一些概括的内容:
t <- colnames(df)
df[t[1] == "A", t[2]] = 7
由于某种原因,它不起作用(每次发生这种情况我更喜欢Python :))。
请告知。
答案 0 :(得分:1)
我认为这一定是直截了当的。请检查这是否解决了您的问题。
> df
Column1 Default_val
1 A 1
2 B 3
3 A 4
4 C 1
5 D 4
> df[2][df[1] == 'A'] = 3
> df
Column1 Default_val
1 A 3
2 B 3
3 A 3
4 C 1
5 D 4