我正在使用list.files(path, pattern, full.names = TRUE)获取特定目录中的文件列表.
默认情况下,这些文件按字母顺序排序.R中是否有任何方法可以按日期排序?
我有以下数据框,我想按第五列("距离")排序.当我尝试`
df.order <- df[order(df[, 5]), ]
Run Code Online (Sandbox Code Playgroud)
我总是收到以下错误消息.
Error in order(df[, 5]) : unimplemented type 'list' in 'orderVector1'`
Run Code Online (Sandbox Code Playgroud)
我不知道为什么R将我的数据框视为列表.运行is.data.frame(df)回报TRUE.我不得不承认is.list(df)也会回来TRUE.是否可以强制我的数据框只是一个数据框而不是一个列表?谢谢你的帮助.
structure(list(ID = list(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
Latitude = list(50.7368, 50.7368, 50.7368, 50.7369, 50.7369, 50.737, 50.737, 50.7371, 50.7371, 50.7371),
Longitude = list(6.0873, 6.0873, 6.0873, 6.0872, 6.0872, 6.0872, 6.0872, 6.0872, 6.0872, 6.0872),
Elevation = list(269.26, 268.99, 268.73, 268.69, 268.14, 267.87, 267.61, 267.31, 267.21, 267.02),
Distance = list(119.4396, 119.4396, 119.4396, 121.199, …Run Code Online (Sandbox Code Playgroud) 我用purrr :: map检索了一个csv文件列表,得到了一个大的列表.
csv_files <- list.files(path = data_path, pattern = '\\.csv$', full.names = TRUE)
all_csv <- purrr::map(csv_files, readr::read_csv2)
names(all_csv) <- gsub(data_path, "", csv_files)
return all_csv
Run Code Online (Sandbox Code Playgroud)
按照@Spacedman的建议编辑
我还需要在process_csv_data函数中单独处理每个tibble /数据帧.
purrr::map(all_csv, process_csv_data)
Run Code Online (Sandbox Code Playgroud)
如何在没有for循环的情况下检索大型列表中单个项目的名称?
我需要进一步处理MySQL查询的结果集作为数据帧.SQL表包含大约200万行和12列(数据大小= 180 MiB).我正在运行带有8 GB内存的OS X 10.9.pandas.read_sql返回数据帧的时间超过20秒是否正常?如何实现pandas.read_csv中的块大小选项?
编辑: Python 2.7.6,pandas 0.13.1
我有一个包含n个观察的数据集和一个包含观察指数的列,例如
col1 col2 col3 ID
12 0 4 1
6 5 3 1
5 21 42 2
Run Code Online (Sandbox Code Playgroud)
并希望根据我的索引创建一个新列
col1 col2 col3 ID col_new
12 0 4 1 12
6 5 3 1 6
5 21 42 2 21
Run Code Online (Sandbox Code Playgroud)
没有for循环.其实我在做
col_new <- rep(NA, length(ID))
for (i in 1:length(ID))
{
col_new[i] <- df[i, ID[i]]
}
Run Code Online (Sandbox Code Playgroud)
有更好的或(tidyverse)方式吗?
我正在循环中对许多数据集进行线性拟合,并将结果绘制在pdf文件中.是否可以直接将摘要(fit)的输出保存在同一个pdf文件中,而不是通过控制台观察大约100个数据集的摘要?
LMmodel <- y ~ x
fit <- lm(LMmodel, data = Dataset)
pdf(file = OutputFile, width = 10, height = 6, paper = "a4r")
xLim = range(x)
yLim = range(y)
plot(x, y, type = "p", xlim = xLim, ylim = yLim,
main = plotTitle, xlab = "x [m]", ylab = "y [dB]",
pch = 20, cex = .9)
regLine(fit, col=palette()[2], lwd=2, lty=1)
grid(lwd = 1.5)
plot(density(residuals(fit)), main = "Density Plot of the Residuals"))
dev.off()
graphics.off()
return(summary(fit))
Run Code Online (Sandbox Code Playgroud) 我是R新手,但我正在寻找一种方法来确定R中以下函数相关的三个参数A,B和C:
y = A * (x1^B) * (x2^C)
有人可以给我一些关于R方法的提示,这有助于我实现这样的拟合吗?