小编nop*_*eva的帖子

read.table读取"T"为TRUE,"F"为FALSE,如何避免?

我有一个包含数据的文件c("A","T","B","F").

我用的时候:

read.csv(myfile,header=F,stringsAsFactors=F)
Run Code Online (Sandbox Code Playgroud)

ř解释字符T作为TRUEF作为FALSE

我做错了吗?

r read.table

16
推荐指数
1
解决办法
7779
查看次数

如何为动态名称变量赋值

嗨,我正在尝试使用for循环命名变量,所以我获得了变量的动态名称.

for (i in 1:nX) {
    paste("X",i, sep="")=datos[,i+1]
    next
}
Run Code Online (Sandbox Code Playgroud)

r

14
推荐指数
2
解决办法
4万
查看次数

read.table,逗号分隔值以及每个元素内的逗号

我正在尝试从csv文件中创建一个以逗号分隔的表.我知道并非所有行都具有相同数量的元素,因此我会编写一些代码来消除这些行.问题是有些行包含数字(以千为单位),其中包括另一个逗号.我无法正确拆分这些行,这是我的代码:

pURL <- "http://financials.morningstar.com/ajax/exportKR2CSV.html?&callback=?&t=EI&region=FRA&order=asc"
res <- read.table(pURL, header=T, sep='\t', dec = '.', stringsAsFactors=F)
x <- unlist( lapply(keyRatios, function(u) strsplit(u,split='\n')) [[1]] )
Run Code Online (Sandbox Code Playgroud)

csv split r read.table

6
推荐指数
1
解决办法
5492
查看次数

使用 kernlab 包错误预测 .local(object, ...) 中的错误:测试向量与模型 R 不匹配

我正在测试kernlab回归问题中的包。'Error in .local(object, ...) : test vector does not match model !ksvm对象传递给predict函数时,这似乎是一个常见的问题。但是,我刚刚找到了不适用于我的问题的分类问题或自定义内核的答案(我使用内置的进行回归)。我在这里没有想法了,我的示例代码是:

data <- matrix(rnorm(200*10),200,10)
tr <- data[1:150,]
ts <- data[151:200,]

mod <- ksvm(x = tr[,-1],
            y = tr[,1],
            kernel = "rbfdot", type = 'nu-svr',
            kpar = "automatic", C = 60, cross = 3)

pred <- predict(mod, 
                ts
                )
Run Code Online (Sandbox Code Playgroud)

r predict kernlab

5
推荐指数
1
解决办法
7576
查看次数

从缩放和居中数据缩放R中的线性回归系数

我使用OLS拟合线性模型,并使用R中的函数比例缩放我的回归量,因为变量之间的度量单位不同.然后,我使用lm命令拟合模型并获得拟合模型的系数.据我所知,拟合模型的系数与原始回归量变量的系数不同,因此必须先缩小才能解释.我一直在寻找一种无法找到任何东西的直接方法.有谁知道这是怎么做到的吗?

请查看代码,能否请您帮我实施您提出的建议?

library(zoo)
filename="DataReg4.csv"
filepath=paste("C:/Reg/",filename, sep="")
separator=";"
readfile=read.zoo(filepath, sep=separator, header=T, format = "%m/%d/%Y", dec=".")
readfile=as.data.frame(readfile)
str(readfile)
DF=readfile
DF=as.data.frame(scale(DF)) 
fm=lm(USD_EUR~diff_int+GDP_US+Net.exports.Eur,data=DF)
summary(fm)
plot(fm)
Run Code Online (Sandbox Code Playgroud)

对不起,这是数据.

http://www.mediafire.com/?hmcp7urt0ag8187

regression r transform

4
推荐指数
1
解决办法
6149
查看次数

Lps中的lpsolve包

我正在使用lpsolve包进行线性编程,但在其教程中已经阅读过只能解决非负变量的问题.

这是我的代码:

library(lpSolve) #linear programming solver
c = c(30, 18, 20, 23, 24, 26) 
a = scan(text="66 89 82 14 35 72")
b = 50
con.qual.s1=scan(text="64 98 17 55 27 80")
con.qual.s2=scan(text="16 59 88 89 60 47")
qual.cons=c(53,82)

n=6 #activities
m=3 #resources
f.rhs = c(b,qual.cons)
f.con <- matrix (rbind(a,con.qual.s1,con.qual.s2,diag.p),nrow=m+nrow(diag.p))
f.obj.d <- c(50,53,82)
diag.d=diag(x = 1, m, m) #non-negativity
f.con.d <- matrix (rbind(t(f.con[1:m,]),diag.d),nrow=n+nrow(diag.d))
f.dir.d <- c(rep("<=",7),rep(">=",2))
f.rhs.d <- c(c,rep(0,m))
of.d=lp ("max", f.obj.d, f.con.d, f.dir.d, f.rhs.d,compute.sens=TRUE)
Run Code Online (Sandbox Code Playgroud)

请注意,忽略约束编号7为非正数的事实.

编辑:我已经为lpSolveAPI包添加了新代码.为了检查是否有效,我为原始问题和双重问题准备了不同的代码. …

r linear-programming lpsolve

4
推荐指数
1
解决办法
5295
查看次数

可以从C例程调用随机C++ 2011标准函数吗?

我需要生成从范围内的随机整数,发现很有趣的东西,讨论在这里通过了答案@Walter.但是,它是C++11标准的,我需要使用C,有没有办法从C拨打电话?我在这里重现他的答案:

#include <random>

std::random_device rd;     // only used once to initialise (seed) engine
std::mt19937 rng(rd());    // random-number engine used (Mersenne-Twister in this case)
std::uniform_int_distribution<int> uni(min,max); // guaranteed unbiased

auto random_integer = uni(rng);
Run Code Online (Sandbox Code Playgroud)

c c++ random c++11

3
推荐指数
1
解决办法
122
查看次数

R ifelse - 向量顺序的意外变化

运行后我得到了意想不到的结果:

 test = c(rep(FALSE, 2), rep(TRUE, 6))
 ifelse(test, c(1:8)[test], 1)
[1] 1 1 5 6 7 8 3 4 
Run Code Online (Sandbox Code Playgroud)

我本来期望1 1 3 4 5 6 7 8,但的索引yesifelse(test, yes, no)被打开.也许我需要更多咖啡,但如果有人能解释这个结果背后的逻辑,我将不胜感激.

r

3
推荐指数
1
解决办法
57
查看次数

用NA替换数据帧中的星号

这是我的数据帧df

我尝试着:

df=data.frame(rbind(c(1,"*","*"),c("*",3,"*"))
df2=as.data.frame(sapply(df,sub,pattern="*",replacement="NA"))
Run Code Online (Sandbox Code Playgroud)

它不起作用,因为星号,但我生气,试图更换它.

r

1
推荐指数
3
解决办法
3110
查看次数

子集犰狳场

如果我理解正确,字段Armadillo就像是任意对象的列表.例如,一组不同大小的矩阵,或矩阵和向量.在文档中,我看到了cube可以使用的类型,slices因此您可以使用它们进行子集化.但是,似乎没有特定的方法来对字段进行子集化.

我的代码的简化版本是:

arma::mat A = eye(2,2);
arma::mat B = eye(3,3)*3;
arma::mat C = eye(4,4)*4;
arma::field<arma::mat> F(3,1);
F(0,0) = A;
F(1,0) = B;
F(2,1) = C;

// to get matrices B and C
F.slices(1,2);
Run Code Online (Sandbox Code Playgroud)

但得到错误

Error: field::slices(): indicies out of bounds or incorrectly used

c++ armadillo rcpp

0
推荐指数
1
解决办法
879
查看次数