我从xls文件中读取数据.显然,时间不是正确的格式.如下(例如)
0.3840277777777778
0.3847222222222222
0.3854166666666667
Run Code Online (Sandbox Code Playgroud)
的确,他们应该是
09:12
09:13
09:13
Run Code Online (Sandbox Code Playgroud)
我不知道如何将其转换为正确的格式.我搜索了几个线程,所有这些线程都是关于将日期(有/没有时间)转换为正确的格式.
有人能给我任何线索吗?
我一直在寻找使用R来识别多变量异常值的最佳方法,但我认为我还没有找到任何可信的方法.
我们可以将虹膜数据作为示例,因为我的数据还包含多个字段
data(iris)
df <- iris[, 1:4] #only taking the four numeric fields
Run Code Online (Sandbox Code Playgroud)
首先,我正在使用距离图书馆MVN的马哈拉诺比斯距离
library(MVN)
result <- mvOutlier(df, qqplot = TRUE, method = "quan") #non-adjusted
result <- mvOutlier(df, qqplot = TRUE, method = "adj.quan") #adjusted Mahalonobis distance
Run Code Online (Sandbox Code Playgroud)
两者都产生了大量的异常值(非调整的150个中有50个,调整后为49/150个),我认为需要更多的改进.遗憾的是,我似乎无法在mvOutlier方法中找到一个设置阈值的变量(表示增加一个点为异常值的概率,因此我们的数字较小)
其次,我使用了异常库.这是为了找到单变量异常值.因此,我的计划是在数据的每个维度上找到异常值,并且那些在所有维度上都是异常值的点被视为数据集的异常值.
library(outliers)
result <- scores(df, type="t", prob=0.95) #t test, probability is 0.95
result <- subset(result, result$Sepal.Length == T & result$Sepal.Width == T & result$Petal.Length == T & result$Petal.Width == T)
Run Code Online (Sandbox Code Playgroud)
为此,我们可以设置概率,但我不认为它可以取代多变量异常值检测.
我试过的其他一些方法
我真的不知道如何在R中使用不匹配的正则表达式正确地找到单词
例如:数据包括:
x = c("hail", "small hail", "wind hail", "deep hail", "thunderstorm hail", "tstm wind hail", "gusty wind hail", "late season hail", "non severe hail", "marine hail")
Run Code Online (Sandbox Code Playgroud)
我想找到所有有"冰雹"但没有"海洋"的人
我的尝试:
x[grep("[^(marine)] hail", x)]
Run Code Online (Sandbox Code Playgroud)
- >我只有5:
"small hail" "wind hail" "deep hail" "tstm wind hail" "gusty wind hail"
Run Code Online (Sandbox Code Playgroud)
我不知道其他4会发生什么
我使用RMySQL和DBI来连接R和MySQL
library(RMySQL)
library(DBI, quietly = TRUE)
Run Code Online (Sandbox Code Playgroud)
对于一个命令,一切都工作正常,例如
sql = "select * from clients"
con <- dbConnect(MySQL(),user=user, password=password, dbname=dbname, host=host)
rs <- dbSendQuery(con, sql)
data <- fetch(rs, n=-1)
huh <- dbHasCompleted(rs)
dbClearResult(rs)
on.exit(dbDisconnect(con))
Run Code Online (Sandbox Code Playgroud)
但是,当我想用";"执行多个命令时 它们之间(例如设置参数),它返回错误.例如
sql = "SET @LAST_TEN_DAY = DATE_ADD(NOW(), INTERVAL -10 DAY); select * from clients where date > @LAST_TEN_DAY"
con <- dbConnect(MySQL(),user=user, password=password, dbname=dbname, host=host)
rs <- dbSendQuery(con, sql)
data <- fetch(rs, n=-1)
huh <- dbHasCompleted(rs)
dbClearResult(rs)
on.exit(dbDisconnect(con))
Run Code Online (Sandbox Code Playgroud)
非常感谢,
我刚刚收到一个数据文件,其扩展名为“*.psv”。经过一番研究,我不知道如何打开它R。
经过一段时间的搜索,我知道这个问题还没有得到解答.假设我有以下向量
v <- c("a", "b", "b", "c","c","c", "d", "d", "d", "d")
如何找到重复次数超过1的值
(应该 "c","c","c", "d", "d", "d", "d")
超过2个重复
(应该"d", "d", "d", "d")
函数duplicated(v)仅返回具有重复项的值.
我知道这听起来是一个常见的错误,在 stackoverflow 上被多次询问过。但是,我很确定我的问题是新的,因为我几乎通读了相关主题。
我有两个文件如下:
ALL_USER_PATH = 'all.csv'
NEW_USER_PATH = 'new.csv'
Run Code Online (Sandbox Code Playgroud)
我先打开“所有”文件进行阅读
with open(ALL_USER_PATH, "r") as f:
df = pd.read_csv(f) #pd is pandas
f.close()
Run Code Online (Sandbox Code Playgroud)
接下来,我删除“新”文件的内容并准备向其中写入新数据
if os.path.isfile(NEW_USER_PATH):
os.remove(NEW_USER_PATH)
Run Code Online (Sandbox Code Playgroud)
写信给它,它工作正常
with open(NEW_USER_PATH, "a") as csv_n:
#writer_n is to write new users
writer_n = csv.writer(csv_n, delimiter=",", lineterminator='\n')
for user in customer_records:
if checkExistence(df): # a method I wrote before
continue
else:
writer_n.writerow([data_to_be_written])
Run Code Online (Sandbox Code Playgroud)
接下来,我删除“所有”文件并向其写入新数据
if os.path.isfile(ALL_USER_PATH):
os.remove(ALL_USER_PATH)
with open(ALL_USER_PATH, "a") as csv_a:
writer_a = csv.writer(csv_n, delimiter=",", lineterminator='\n')
for user in customer_records:
writer_a.writerow([all_data_to_be_written])
Run Code Online (Sandbox Code Playgroud)
错误
“关闭文件上的 …
我尝试了不同的方法在 R 上安装 RWeka 包,但没有找到任何成功。
尽管尝试了不同的方法,但我无法安装 RWeka:
1.正常安装
install.packages("RWeka")
cannot open compressed file 'RWekajars/DESCRIPTION', probable reason 'No such file or directory'
Run Code Online (Sandbox Code Playgroud)
2. 从 URL 安装
install.packages("devtools")
require(devtools)
install_url("http://cran.r-project.org/bin/windows/contrib/3.2/RWeka_0.4-24.zip")
Error in read.dcf(file.path(pkgname, "DESCRIPTION"), c("Package", "Type")) :
cannot open the connection
Run Code Online (Sandbox Code Playgroud)
3.从本地安装(下载zip文件后放入目录)
install_local("RWeka_0.4-24.zip")
ERROR: installing binary package failed
* removing 'C:/Program Files/R/R-3.2.0/library/RWeka'
Run Code Online (Sandbox Code Playgroud)
有人可以帮我解决这个问题吗?非常感谢