我需要帮助才能通过一个带有重复项的密钥连接两个数据帧.我想只为每个副本合并一次,我不能这样做dplyr::left_join.
例:
ds1 <- data.frame(
id = c(1,1,1,2,2),
V2 = c(5,6,7,5,8)
)
ds2<-data.frame(
id=c(1,2),
Value=c(56,98)
)
ds3<-left_join(ds1, ds2, by="id")
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我有:
# id V2 Value
1 1 5 56
2 1 6 56
3 1 7 56
4 2 5 98
5 2 8 98
Run Code Online (Sandbox Code Playgroud)
但是我需要:
# id V2 Value
1 1 5 56
2 1 6
3 1 7
4 2 5 98
5 2 8
Run Code Online (Sandbox Code Playgroud) 我有一个data.frame(比方说x)一个character列。我试图从该列中提取最后一个n(比如说3)字符,并在同一个data.frame. 我正在尝试这样做:
library(dplyr)
x <- x %>% mutate(new_col=substr(old_col, nchar(old_col)-3+1, nchar(old_col)))
Run Code Online (Sandbox Code Playgroud)
错误信息:
mutate_impl(.data, dots) 中的错误:评估错误:“nchar()”需要字符向量。
我也试过这个:
x <- x %>% mutate(new_col=substr(x$old_col, nchar(x$old_col)-3+1, nchar(x$old_col)))
Run Code Online (Sandbox Code Playgroud) 所有这些看似非常相似的功能之间有什么区别?
在尝试解码较大的json值时,我遇到了Json-Decode-Extra库中的以下代码.(位于这里)
import Date (Date)
type alias User =
{ id : Int
, createdAt : Date
, updatedAt : Date
, deletedAt : Maybe Date
, username : Maybe String
, email : Maybe String
, fullname : Maybe String
, avatar : Maybe String
, isModerator : Bool
, isOrganization : Bool
, isAdmin : Bool
}
metaDecoder : (Int -> Date -> Date -> Maybe Date -> b) -> Decoder b
metaDecoder f = …Run Code Online (Sandbox Code Playgroud) 我有一个R data.frame(简化的情况,实际上有几十个TRUE/FALSE列):
name = c("ball", "pen", "box")
red = c(TRUE, FALSE, FALSE)
green = c(TRUE, TRUE, FALSE)
blue = c(TRUE, TRUE, FALSE)
df = data.frame(name, red, green, blue)
name red green blue
1 ball TRUE TRUE TRUE
2 pen FALSE TRUE TRUE
3 box FALSE FALSE FALSE
Run Code Online (Sandbox Code Playgroud)
我想在df中附加一列,其中包含标记TRUE为一个的所有颜色的串联:
name red green blue color
1 ball TRUE TRUE TRUE red,green,blue
2 pen FALSE TRUE TRUE green, blue
3 box FALSE FALSE FALSE na
Run Code Online (Sandbox Code Playgroud)
有没有办法在不编写繁琐的ifelse/ paste语句的情况下执行此操作?
我有数据价值
dput(a)
"1/3/2019 15:59"
Run Code Online (Sandbox Code Playgroud)
我需要将时间四舍五入到下一个小时。我需要这个日期是"1/3/2019 16:00"?
我怎样才能做到这一点?
我想从一个字符串中提取不在另一字符串中的元素。
什么是最快的(向量化?)方法?
模拟数据:
library(data.table)
dt <- data.table(id = c("A", "B", "C", "D"),
product= c("1", "1,2", "1,2,3", "4"),
stock= c("2, 3", "1,2", "1,2", "4"))
> dt
id product stock
1: A 1 2, 3
2: B 1,2 1,2
3: C 1,2,3 1,2
4: D 4 4
Run Code Online (Sandbox Code Playgroud)
我正在寻找的是一个名为的新变量new,该变量包含productnot中的元素stock。
> dt
id product stock new
1: A 1 2, 3 1
2: B 1,2 1,2 <NA>
3: C 1,2,3 1,2 3
4: D 4 4 …Run Code Online (Sandbox Code Playgroud) 我正在尝试格式化 a 中的一些字符串,data.frame并且当且仅当第二个字符是字母时,我想删除前导零:
3818119 --> 3818119
0M11936 --> M11936
0X11087 --> X11087
0T05060 --> T05060
到目前为止,我已经尝试了多种方法,最后gsub("^(?=[^A-Z]{2})","" ,output$id)和gsub("/^..[a-z]/","" ,output$id)但都没有成功。
r ×8
colon-equals ×2
dplyr ×2
regex ×2
stringr ×2
autohotkey ×1
data.table ×1
elm ×1
gsub ×1
join ×1
merge ×1
stringi ×1
substr ×1