我有以下字符串
string <- c('a - b - c - d',
'z - c - b',
'y',
'u - z')
Run Code Online (Sandbox Code Playgroud)
我想将它分配,以便第二次出现' - '后的所有内容都被丢弃.
结果是这样的:
> string
[1] "a - b" "z - c" "y" "u - z"
Run Code Online (Sandbox Code Playgroud)
我用过substr(x = string, 1, regexpr(string, pattern = '[^ - ]*$') - 4),但它排除了最后一次' - ',这不是我想要的.
在数据帧的Pass行上作为R中函数的参数进行跟进,列名指定参数:
我想用不同的参数组合训练以下模型:
library(xgboost)
library(Matrix)
df <- data.frame(y = sample(0:1, 1000, replace = TRUE),
a = rnorm(1000),
b = rnorm(1000),
c = rnorm(1000),
d = rnorm(1000))
train <- sparse.model.matrix(object = y~.-1, data = df)
model <- xgboost(data = train,
label = df$y,
# parameters
nrounds = 10,
subsample = 0.5,
colsample_bytree = 0.8)
Run Code Online (Sandbox Code Playgroud)
我创建的参数网格,我想网格的行通入xgboost功能,同时保持data和label参数不变。
param <- expand.grid(nrounds = c(10, 50, 100),
subsample = c(0.5, 0.8, 0.9),
colsample_bytree = c(0.8))
Run Code Online (Sandbox Code Playgroud)
我想使用列名来传递参数以指定它们(如果列名不是一个选项,则列的顺序也可以这样做),因为这将使调用可扩展用于不同的功能。
我正在尝试建立一个结合ggplot2和的情节plotly。两条垂直线出现在纯ggplot2上,但是一旦我调用plotly::ggplotly它,它们就会消失。如何使数据也出现在ggplotly版本上?如果您有一个仅使用的解决方案plot_ly,那也可以。
数据:
df <- structure(list(date = structure(c(17226, 17257, 17287, 17318,
17348, 17379, 17410, 17440, 17471, 17501, 17226, 17257, 17287,
17318, 17348, 17379, 17410, 17440, 17471, 17501, 17226, 17257,
17287, 17318, 17348, 17379, 17410, 17440, 17471, 17501), class = "Date"),
n = c(253L, 217L, 257L, 166L, 121L, 56L, 68L, 62L, 142L,
20L, 174L, 228L, 180L, 158L, 80L, 39L, 47L, 54L, 107L, 12L,
93L, 74L, 47L, 49L, 55L, 16L, 52L, 53L, 32L, …Run Code Online (Sandbox Code Playgroud) 我如何告诉 R 使用函数参数的默认值,而无需 i)在函数调用中省略参数以及 ii)不知道默认值是什么?
mean我知道我可以使用in的默认值rnorm():
rnorm(n = 100) # by omitting the argument
# or
rnorm(n = 100, mean = 0) # by including it in the call with the default value
Run Code Online (Sandbox Code Playgroud)
但假设我不知道默认值,但想将其显式包含在函数调用中。我怎样才能做到这一点?
我有这个数据框,我想将其所有数值乘以 100。如果我使用df*100,我会得到国家/地区列中所有条目的 NA。
NA在不替换国家/地区名称的情况下乘以数据框的最佳方法是什么?
country gdp.stdv con.stdv[, 2] inv.stdv[, 2] gov.stdv[, 2]
1 Australia 0.01317959 0.010973106 0.03932870 0.016814514
2 Austria 0.01238430 0.011640438 0.03281213 0.008398618
3 Canada 0.01357573 0.011042443 0.03991174 0.014100187
4 European Union (15 countries) 0.01073943 0.007744634 0.02606627 0.005658542
Run Code Online (Sandbox Code Playgroud) 我想将下面的数据框分成五列.应在每个" - "之后创建列.注意,一些观察(26和28)有一个额外的字段("uk"和"es").所以在最后一栏中所有观察结果都是26和28应该包含NA.
26 paid 21.09 - abs - E X1028 - 61,77 - uk.pdf
27 paid 21.09 - corefunction - mah - 125,66.PDF
28 paid 21.09 - mrl - mah - 456,96 - es.PDF
29 paid 21.09 - mollea - inv - 297,50.pdf
30 paid 21.09 - saless - inv - 117,81.pdf
31 paid 23.09 - boc - inv - 59,80.pdf
Run Code Online (Sandbox Code Playgroud)