簡體   English   中英

使用R在數據框中創建新列

[英]Creating New columns in data Frame using R

我下面有一個數據框;

NPA_Jan Risk_Jan NAP_Feb Risk_Feb
Yes     High     No      Medium
No       Low      No      Low
No       High     Yes     High
Yes      High     Yes     High
Yes      Low      No      Low

我期望下面的輸出:

NPA_Jan_New   Risk_Jan_New NPA_Feb_New Risk_Feb_New
1             1            0              0
0             0            0              0
0             1            1              1
1             1            1              1
1             0            0              0

如果NPA為“是”,風險為“高”,則應標記1。

最簡單的方法就是如David所說:

df.new <- as.data.frame((df == "Yes" | df == "High") + 0)
colnames(df.new) <- paste(colnames(df.new), '_new', sep='')

一個選項正在使用

out <- +(sapply(df, `%in%`, c("Yes", "High")))
colnames(out) <- paste0(colnames(df), "_new")
out
#     NPA_Jan_new Risk_Jan_new NAP_Feb_new Risk_Feb_new
#[1,]           1            1           0            0
#[2,]           0            0           0            0
#[3,]           0            1           1            1
#[4,]           1            1           1            1
#[5,]           1            0           0            0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM