在 中R,我尝试 使用存储在 中的元素data.frame对命名进行子集化。Datalist
数据
Data <- read.table(text = " Data_x Data_y Column_X
-34 12 A
-36 20 D
-36 12 E
-34 18 F
-34 10 B
-35 24 A
-35 16 B
-33 22 B
-33 14 C
-35 22 D", header = T)
Run Code Online (Sandbox Code Playgroud)
代码
variableData <- list("A", "B")
subsetData_1 <- subset(Data, Column_X == variableData[1])
subsetData_2 <- subset(Data, Column_X == variableData[2])
subsetData <- rbind(subsetData_1, subsetData_2)
Run Code Online (Sandbox Code Playgroud)
问题
list可以多于两个且不固定。甚至可以有超过 100 个元素。 …我的目标是在R中创建一个反应性闪亮函数.有多个输出(例如表)可以绑定到类似的函数.但是我需要函数来响应某个参数,特定于一个表.这是一些简单的示例代码,它不起作用,但它使我的想法清晰 - 我希望:
output$tableOne <- DT::renderDataTable({
getData(foo)
})
getData <- reactive(function(funParameter){
corrStartDate <- input$StartDate
corrEndDate <- input$EndDate
return(someData(corrStartDate, corrEndDate, funParameter))
})
Run Code Online (Sandbox Code Playgroud)
在所有表中(如果有多个表)我不想显示具有不同基本参数的数据(getData(x,y,foo)).所以第二个表可以使用"getData(x,y,bar)".我不想每次为另一个表写相同的函数.
上述解决方案无效,因为无功功能不支持参数.
你怎么解决这个问题?
我正在尝试在 Plotly 中制作一个 3x3 子图的网格。我正在尝试获取每个子图的标题和顶部的主标题,但我似乎无法让它工作。我看到了这个很棒的 Python站点,但我似乎找不到 R 的等效站点。
all <- subplot(graph1, graph2, graph3, graph4, graph5, graph6,
graph7, graph8, graph9, nrows = 3)
Run Code Online (Sandbox Code Playgroud)
这给了我想要的网格,但在子图上没有我想要的标题:
1. Graph 1
2. Graph 2
3. Graph 3
4. Graph 4
5. Graph 5
6. Graph 6
7. Graph 7
8. Graph 8
9. Graph 9
Run Code Online (Sandbox Code Playgroud)
并且默认的主标题是图表 9。
任何人都可以提供帮助吗?
下面代码的目标是对具有400列和6000行的数据集执行递归和迭代分析.在移动到所有可能的组合之前,它一次需要两列并对其进行分析.
正在使用的小子集大数据集:
data1 data2 data3 data4
-0.710003 -0.714271 -0.709946 -0.713645
-0.710458 -0.715011 -0.710117 -0.714157
-0.71071 -0.714048 -0.710235 -0.713515
-0.710255 -0.713991 -0.709722 -0.71397
-0.710585 -0.714491 -0.710223 -0.713885
-0.710414 -0.714092 -0.710166 -0.71434
-0.711255 -0.714116 -0.70945 -0.714173
-0.71097 -0.714059 -0.70928 -0.714059
-0.710343 -0.714576 -0.709338 -0.713644
Run Code Online (Sandbox Code Playgroud)
代码使用apply():
# Function
analysisFunc <- function () {
# Fetch next data to be compared
nextColumn <<- currentColumn + 1
while (nextColumn <= ncol(Data)){
# Fetch the two columns on which to perform analysis
c1 <- …Run Code Online (Sandbox Code Playgroud) 我刚刚开始使用ggplot2()(数据可视化)R。我拥有的数据具有行格式的不同工作负载。这些列中的每一列都有四个不同的参数,我想将它们绘制为堆积条形图,最好使用ggplot2().
可重复的数据
Workload P1 P2 P3 P4
W1 0.3 0.2 0.4 0.1
W2 0.5 0.1 0.3 0.1
W3 0.2 0.3 0.4 0.1
W4 0.3 0.2 0.5 0.1
Run Code Online (Sandbox Code Playgroud)
我想绘制Workload为x-axis,然后P1,P2,P3并将P4针对 上的每个工作负载进行堆叠y-axis。
我尝试了很多东西,但我对参数和参数感到困惑ggplot2()。如果有人可以建议我如何做到这一点,那将会很有帮助。
谢谢。
自从我开始使用R编程已经有一个月了,有一件事使它与其他统计编程语言区别开来,这是一个很大的软件包支持基础.
但是,最近我意识到同一个任务有不同的包.哪个对我提出了有关使用包的问题.
总之,我对R编程中的包有以下问题:
期待答案/评论,谢谢.
我正在使用C文件 IOsysfs从linux. 寄存器的路径和样本值如下:
cat /sys/class/powercap/intel-rapl/intel-rapl\:0/energy_uj
56039694184
Run Code Online (Sandbox Code Playgroud)
代码:添加\后intel-rapl\考虑unknown escape sequence
#define FILE_SIZE 512
static FILE *fp;
char filename[FILE_SIZE];
char TEMP[FILE_SIZE];
int FILE, READ;
long int POWER;
FILE = open("/sys/class/powercap/intel-rapl/intel-rapl\\:0/energy_uj", O_RDONLY);
READ = read(FILE, TEMP, sizeof(TEMP));
POWER= strtod(TEMP,NULL);
close(FILE);
sprintf(filename,"test.csv");
fp = fopen(filename,"a+");
fprintf(fp,"\n");
fprintf(fp, "%ld", POWER);
Run Code Online (Sandbox Code Playgroud)
代码编译时没有任何错误,但在输出文件中我得到的值为0. 这是由于我如何考虑转义序列吗?
谢谢。
我有一个大数据(数千列)框架,其中很少有列具有重复的列名。然后,有一组列名,其中列名的一部分是重复的,而同一列名的另一部分不是。
使用R和以上两个属性,我想将所有此类列拆分为不同的数据框以进行进一步分析。为了实现这一点,我想在数据框上运行以下动态逻辑:
cbind()列名列并将其复制到不同的数据框中。如果 10 列具有相同的列名,则它们构成一个数据框,另外 5 个具有相同列名的列构成另一个数据框。cbind()重复列名称的列到不同的数据帧,如果列名前的字符串-与列名前的字符串匹配-的另一列与列名的字符串后- 不与列名的一部分,比赛结束后-的另一列.下面是示例输入数据(大数据太大,但遵循完全相同的属性),其中前两列将基于上述示例形成单个数据框。将有另一个数据框,其中包含从三列到最后一列的列。
我试过了split(),但到目前为止还没有奏效。关于我如何做到这一点的任何建议?
样本输入数据
structure(list(`A-DIODE` = c(1.2, 0.4), `A-DIODE` = c(1.3, 0.6
), `B-DIODE` = c(1.4, 0.8), `B-ACC1` = c(1.5, 1), `B-ACC2` = c(1.6,
1.2), `B-ANA0` = c(1.7, 1.4), `B-ANA1` = c(1.8, 1.6), `B-BRICKID` = c(1.9,
1.8), `B-CC0` = c(2L, 2L), `B-CC1` = c(2.1, 2.2), `B-DIGDN` = c(2.2,
2.4), `B-DIGDP` = c(2.3, …Run Code Online (Sandbox Code Playgroud) 下方的输入表中的数据点为NA。我知道R何时将值与之比较NA会导致输出被存在NA。
还有没有办法让我仍然可以比较使用ifelse()并确保所比较的值之一NA是否仍然可以像NA被比较的字符/字符串那样提供输出?
输入原始数据
data <- read.table(header = TRUE, text = "A B
NA TEST
TEST TEST
Abaxasdas Test")
Run Code Online (Sandbox Code Playgroud)
输入数据表
A B
<NA> TEST
TEST TEST
Abaxasdas Test
Run Code Online (Sandbox Code Playgroud)
码
data$Output <- ifelse(as.character(data$A) == as.character(data$B), "YES", "NO")
Run Code Online (Sandbox Code Playgroud)
输出量
A B Output
<NA> TEST <NA>
TEST TEST YES
Abaxasdas Test NO
Run Code Online (Sandbox Code Playgroud)
预期产量
A B Output
<NA> TEST NO
TEST TEST YES
Abaxasdas Test NO
Run Code Online (Sandbox Code Playgroud) 我有两个向量:numbers1和numbers2,其中包含整数元素.我想计算n umbers1和numbers2的元素乘积.例如,在numbers1中,第一个值是3,在number2中,第一个值是2.什么是语法?
这让我想起了Java中的数组元素,但我无法总结如何将它们相乘.我是R编程的新手.
使用cbind(),我结合,其具有与元件中的数据dot或dash在细胞中的值.cbind()似乎在此之前截断了任何内容dot.
例如:如果单元格值是XYZ.1,则在cbind()它之后1.并且,如果值是XYZ-02,则在cbind()它变为之后2.
数据
A B C
ABC.1 XYZ-02 PQR-03
ABC.1 XYZ-02 PQR-03
ABC.1 XYZ-02 PQR-03
ABC.1 XYZ-02 PQR-03
ABC.1 XYZ-02 PQR-03
Run Code Online (Sandbox Code Playgroud)
码
data <- cbind(Data$A, Data$B)
Run Code Online (Sandbox Code Playgroud)
产量
A B
1 2
1 2
1 2
1 2
1 2
Run Code Online (Sandbox Code Playgroud)
理想输出
A B
ABC.1 XYZ-02
ABC.1 XYZ-02
ABC.1 XYZ-02
ABC.1 XYZ-02
ABC.1 XYZ-02
Run Code Online (Sandbox Code Playgroud)
这是怎么发生的?谢谢.