我有一个for loop在每次迭代后生成一个数据帧.我想将所有数据框附加在一起,但发现它很困难.以下是我正在尝试的,请建议如何解决它:
d = NULL
for (i in 1:7) {
# vector output
model <- #some processing
# add vector to a dataframe
df <- data.frame(model)
}
df_total <- rbind(d,df)
Run Code Online (Sandbox Code Playgroud) 我有一个带有列的数据框,x1, x2, group我想生成一个新的数据框,其中有一个额外的列rank,表示x1其组中的顺序.
还有一个相关的问题在这里,但接受的答案似乎不工作了.
直到这里,没关系:
library(dplyr)
data(iris)
by_species <- iris %>%
arrange(Species, Sepal.Length) %>%
group_by(Species)
Run Code Online (Sandbox Code Playgroud)
但是当我试图按组排名时:
by_species <- mutate(by_species, rank=row_number())
Run Code Online (Sandbox Code Playgroud)
错误是:
排名错误(x,ties.method ="first",na.last ="keep"):
缺少参数"x",没有默认值
更新
问题是dplyr和之间存在一些冲突plyr.要重现错误,请加载两个包:
library(dplyr)
library(plyr)
data(iris)
by_species <- iris %>%
arrange(Species, Sepal.Length) %>%
group_by(Species) %>%
mutate(rank=row_number())
# Error in rank(x, ties.method = "first", na.last = "keep") :
# argument "x" is missing, with no default
Run Code Online (Sandbox Code Playgroud)
卸载plyr它的工作原理:
detach("package:plyr", unload=TRUE)
by_species <- iris %>% …Run Code Online (Sandbox Code Playgroud) 如何在ggplot条形图标签上指定确切的小数位数?
数据:
strefa <- c(1:13)
a <- c(3.453782,3.295082,3.137755,3.333333,3.500000,3.351351,3.458824,3.318681,3.694175,3.241379,3.138298,3.309524,3.380000)
srednie <- data.frame(strefa,a)
Run Code Online (Sandbox Code Playgroud)
代码是:
ggplot(srednie, aes(x=factor(strefa), y=a, label=round(a, digits = 2))) +
geom_bar(position=position_dodge(), stat="identity", colour="darkgrey", width = 0.5) +
theme(legend.position="none",axis.text.x = element_blank(), axis.ticks.x = element_blank(), axis.ticks.y = element_blank()) +
geom_text(size = 4, hjust = 1.2) +
coord_flip(ylim = c(1,6))+
xlab("") +
ylab("")
Run Code Online (Sandbox Code Playgroud)
如您所见,在标题为5和2的条形图上,标签仅限于小数点后第1位.即使有3.000000或5.999999,如何显示2位小数?在这种情况下,我想显示3.00和6.00.
我试图用作aes参数,label=round(a, digits = 2)但它不起作用.
我试图描绘我正在阿拉伯/波斯湾研究的某些生物的生态分布.以下是我尝试过的代码示例:
背景层
library(ggplot2)
library(ggmap)
nc <- get_map("Persian Gulf", zoom = 6, maptype = 'terrain', language = "English")
ncmap <- ggmap(nc, extent = "device")
Run Code Online (Sandbox Code Playgroud)
其他层
ncmap+
stat_density2d(data=sample.data3, aes(x=long, y=lat, fill=..level.., alpha=..level..),geom="polygon")+
geom_point(data=sample.data3, aes(x=long, y=lat))+
geom_point(aes(x =50.626444, y = 26.044472), color="red", size = 4)+
scale_fill_gradient(low = "green", high = "red") + scale_alpha(range = c(0.00, 0.25), guide = FALSE)
Run Code Online (Sandbox Code Playgroud)
但是,我想用它stat_density2d来显示数百种物种的分布(在列中记录,例如SP1 ...... SPn),而不仅仅是显示纬度和经度.
实现数据库查询后,我将获得下面的多维数组.
二维数组
Array
(
[0] => Array
(
[t1] => test1
)
[1] => Array
(
[t2] => test2
)
[2] => Array
(
[t3] => test3
)
[3] => Array
(
[t4] => test4
)
[4] => Array
(
[t5] => test5
)
)
Run Code Online (Sandbox Code Playgroud)
但我想将其转换为单维数组,如下面的格式.
一维数组
Array (
t1 => test1
t2 => test2
t3 => test3
t4 => test4
t5 => test5
)
Run Code Online (Sandbox Code Playgroud)
请帮我这样做
我在Shiny中有一个dataTable,但我想禁用排序并删除列标题旁边的箭头,如下图所示.
我使用以下代码试图在没有运气的情况下解除它.
output$ex <-
renderDataTable({inData},
options = list(
bLengthChange = 0,
bFilter = 0,
bInfo = 0,
bPaginate = 0,
bSortable = 0,
bOrderable = 0),
rownames=FALSE)
Run Code Online (Sandbox Code Playgroud)
我想bSortable=0,bOrderable=0会做的伎俩,但不会使它工作.
我正在学习Go,文档和互动课程说空interface可以容纳任何类型,因为它不需要额外实现的方法。
举个例子:
func describe(i interface{}) {
fmt.Printf("Type: %T | Value: %v\n", i, i)
}
Run Code Online (Sandbox Code Playgroud)
......会打印出来......
"Type: int | Value: 5" // for i := 5
"Type: string | Value: test" // for i := "test"
... etc
Run Code Online (Sandbox Code Playgroud)
所以我想我的问题是这是否Go's是实现通用功能的方式,或者是否有另一种更合适的方式来实现它们。
我正在尝试使用ggplot2在R中制作散点图,其中y轴的中间被折叠或移除,因为那里没有数据.我在下面的photoshop中做过,但有没有办法用ggplot创建类似的情节?这是具有连续比例的数据:
这是代码:
ggplot(data=distance_data) +
geom_point(
aes(
x = mdistance,
y = maxZ,
shape = factor(subj),
color = factor(side),
size = (cSA)
)
) +
scale_size_continuous(range = c(4, 10)) +
theme(
axis.text.x = element_text(colour = "black", size = 15),
axis.text.y = element_text(colour = "black", size = 15),
axis.title.x = element_text(colour = "black", size= 20, vjust = 0),
axis.title.y = element_text(colour = "black", size= 20),
legend.position = "none"
) +
ylab("Z-score") +
xlab("Distance")
Run Code Online (Sandbox Code Playgroud) 我有一个类似类型的1000个数据框列表
dfs<-list()
for (i in 1:1000) {
dfs[[i]]<-iris[sample(1:length(iris$Sepal.Length),80),-5]
}
Run Code Online (Sandbox Code Playgroud)
每个都是80乘4的数据帧.我想以单元方式添加(或任何其他操作)所有这些数据帧,并将输出作为80乘4的数据帧,每个单元格包含1000个单元格的总和,或者可能是1000个单元格的平均值?
下面是我正在使用的功能,以突出显示悬停在上面的行.
当我的目标是从stripe_table类中选择tbodies时,我无法理解如何实现这一点.一旦将其设置为事件侦听器,我需要让a和td nodeNames响应mouseover事件,从而突出显示其父行.
有人可以解释一下可以实现这一目标的步骤吗?我如何从悬停的a或td元素遍历DOM以找到其父行?
谢谢!
在mouseover上将tbody设置为eventlistener,mouseout对a和td元素做出反应 - >修改tr - 查找目标元素的祖先表行 - 然后将突出显示应用于该表行 - 要遍历DOM运行一个循环将event -target元素重置为其父节点,直到--parent的节点名称等于On mouseout事件,需要恢复格式化*/
//Set up Hover Events
function addEvent( obj, type, fn ) {
if ( obj.attachEvent ) {
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn] ( window.event );}
obj.attachEvent( 'on'+type, obj[type+fn] );
} else
obj.addEventListener(type, fn, false);
}
function setUpFieldEvents(){
var stripeTables = document.getElementsByClassName("stripe_table");
var tableBodies = stripeTables.tBodies;
addEvent(tableBodies, "mouseover", hoverHighlight);
addEvent(tableBodies, "mouseout", undoHighlight);
}
function hoverHighlight(){
var stripeTables = document.getElementsByClassName("stripe_table");
var tableBodies = stripeTables.tBodies;
var tableData …Run Code Online (Sandbox Code Playgroud) 我有一个数据集,其中包含我想要合并的列,类似于:
library(data.table)
DF <- as.data.table(list(ID = c(1,2,3,4,5), Product = c('Y', NA, NA, 'Z', NA), Type = c(NA, 'D', 'G', NA, NA)))
DF
ID Product Type
1 Y NA
2 NA D
3 NA G
4 Z NA
5 NA NA
Run Code Online (Sandbox Code Playgroud)
我希望看起来像这样:
DF
ID Product Type Category
1 Y NA Y
2 NA D D
3 NA G G
4 Z NA Z
5 NA NA NA
Run Code Online (Sandbox Code Playgroud)
我的代码是:
DF[,Category := na.omit(c(Product,Type)), by = ID][,c("Product","Type"):=NULL]
Run Code Online (Sandbox Code Playgroud)
我的问题是,我想有对于Category要NA当两个Product和 …
r ×8
ggplot2 ×3
dplyr ×2
array-reduce ×1
arrays ×1
bar-chart ×1
css ×1
datatable ×1
density-plot ×1
generics ×1
go ×1
html ×1
interface ×1
javascript ×1
merge ×1
php ×1
scatter-plot ×1
shiny ×1