我很难过.通常,read.csv按预期工作,但我遇到了行为意外的问题.这很可能是我的用户错误,但任何帮助将不胜感激.
这是文件的URL
http://nces.ed.gov/ipeds/datacenter/data/SFA0910.zip
Run Code Online (Sandbox Code Playgroud)
这是我的代码来获取文件,解压缩并读取它:
URL <- "http://nces.ed.gov/ipeds/datacenter/data/SFA0910.zip"
download.file(URL, destfile="temp.zip")
unzip("temp.zip")
tmp <- read.table("sfa0910.csv",
header=T, stringsAsFactors=F, sep=",", row.names=NULL)
Run Code Online (Sandbox Code Playgroud)
这是我的问题.当我在Excel中打开数据csv数据时,数据看起来像预期的那样.当我将数据读入R时,第一列实际上被命名为row.names.R正在读取一行额外的数据,但我无法弄清楚导致row.names成为列的"错误".简单来说,看起来数据已经转移了.
然而,奇怪的是R中的最后一列似乎包含正确的数据.
以下是前几列中的几行:
tmp[1:5,1:7]
row.names UNITID XSCUGRAD SCUGRAD XSCUGFFN SCUGFFN XSCUGFFP
1 100654 R 4496 R 1044 R 23
2 100663 R 10646 R 1496 R 14
3 100690 R 380 R 5 R 1
4 100706 R 6119 R 774 R 13
5 100724 R 4638 R 1209 R 26
Run Code Online (Sandbox Code Playgroud)
关于我可能做错什么的任何想法?
在mongo shell中,js文件可以使用load命令运行:
load("path/to/file/file.js")
Run Code Online (Sandbox Code Playgroud)
如何使用spring-data做到这一点?或者Java中的任何其他方式.我试过了:
BasicDBObject obj = new BasicDBObject();
obj.append( "$load" , "/path/file.js" );
CommandResult t=mongoTemplate.executeCommand(obj);
Run Code Online (Sandbox Code Playgroud)
和:
obj.append( "$eval" , "load(\"/path/file.js\")" );
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
我想getURL在R.函数中使用Tor.工作正常(在firefox中检查),socks5at port 9050.但是当我在R中设置它时,我得到以下错误
html <- getURL("http://www.google.com", followlocation = T, .encoding="UTF-8", .opts = list(proxy = "127.0.0.1:9050", timeout=15))
Run Code Online (Sandbox Code Playgroud)
curlPerform出错(curl = curl,.opts = opts,.encoding = .encoding):'\n \nTor不是HTTP代理\n \n \n
Tor不是HTTP代理
\n\n您似乎已将Web浏览器配置为使用Tor作为HTTP代理.\n这是不正确的:Tor是SOCKS代理,而不是HTTP代理.\n请相应地配置您的客户端.
我已经尝试用socks,socks5替换代理,但它没有用.
如何使用read.csv命令将特定行读入R?假如我有一个包含10行数据的CSV文件,而我只想读取第5行数据,我尝试执行以下操作,但它似乎不起作用:
myFile <- "MockData.csv"
myData <- read.csv(myFile, row.names=5)
myData
Run Code Online (Sandbox Code Playgroud)
谢谢!
我知道我可以使用apply评估一个包含许多数据的函数,但是我可以使用一个数据评估许多函数吗?使用sapply我可以得到:
sapply(list(1:5,10:20,5:18), sum)
Run Code Online (Sandbox Code Playgroud)
但我想要像这样的东西:
sapply(1:5, list(sum, min,max))
Run Code Online (Sandbox Code Playgroud)
得到
15 1 5
Run Code Online (Sandbox Code Playgroud)
有什么聪明的主意吗?:)
我知道在Java中是@Override标注注释方法,它覆盖来自超类的方法,如果不存在警告.我的问题:是否有一个与annotate方法相反的标签,我们不想覆盖超类的方法(例如偶然)?
我知道我可以在超类中设置方法final,但是这个解决方案涉及超类代码的更改.这就是我不想做的 - 只想改变我的代码:)
我知道我可以为这个方法设置另一个名字,但有时候在超级类中有很多方法而你根本就没有意识到它们.因此,当您在子类中实现自己的时,可能会偶然使用相同的名称.怎么避免这个?
我正在尝试使用...来传递rcpp函数中的参数但是它不起作用.怎么做到这一点?
NumericVector function(SEXP xR, ...){
NumericVector x(xR);
int lenx = x.size();
NumericVector ret(lenx);
for(int i=0; i < lenx; i++){
if(x[i]<0){
ret[i] = 0;
}else if(x[i]>1){
ret[i] = 1;
}else{
ret[i] = anotherfunction(x[i], ...);
}
}
return ret;
}
Run Code Online (Sandbox Code Playgroud)
在当前版本中我收到此错误:
expected primary-expression before '...' token
有一种简单的方法可以将拉丁字母转换为希腊字母,使用stringiR 的包,它依赖于ICU的音译器:
library(stringi)
stri_trans_general("abcd", "latin-greek")
Run Code Online (Sandbox Code Playgroud)
是否有类似的简单方法将拉丁语转换为古希腊语(αβγδ)而不是希腊语(ἀβκδ)?
我需要从文本中提取一些数字.文字是
x <- "Lorem ipsum dolor sit amet[245], consectetur adipiscing (325). Deinde prima illa, quae in congressu[232]. solemus: Quid tu, inquit, huc? Sequitur disserendi ratio cognitioque 295. naturae;"
Run Code Online (Sandbox Code Playgroud)
要提取的数字是325和232.这些数字在括号内和句子末尾.其他数字不包括在内.我尝试过strsplit(text, "[A-Za-z]+"),但没有得到我需要的东西.
>str= "AAC|Australia Acquisition Corp. - Ordinary Shares|S|N|D|100"
> strsplit(str,"\\|")
[[1]]
[1] "AAC"
[2] "Australia Acquisition Corp. - Ordinary Shares"
[3] "S"
[4] "N"
[5] "D"
[6] "100"
Run Code Online (Sandbox Code Playgroud)
我不知道\\|等于|什么?
也许\\|等于\|,
为什么可以 strsplit(str,"\\|")工作?