我有一个(有点复杂的)网络抓取挑战,我希望完成,并希望在某个方向(你想分享的任何级别)这里:
我想通过此链接中的所有"物种页面":
所以对于他们每个人我会去:
在该链接中,我希望废弃页面中的数据,以便我将有一个包含此数据的长列表(例如):
chr.trna3 (1-77) Length: 77 bp
Type: Ala Anticodon: CGC at 35-37 (35-37) Score: 93.45
Seq: GGGCCGGTAGCTCAGCCtGGAAGAGCGCCGCCCTCGCACGGCGGAGGcCCCGGGTTCAAATCCCGGCCGGTCCACCA
Str: >>>>>>>..>>>>.........<<<<.>>>>>.......<<<<<.....>>>>>.......<<<<<<<<<<<<....
Run Code Online (Sandbox Code Playgroud)
每一行都有自己的列表(在每个动物列表中每个"trna"的列表内)
我记得看过Rcurl和XML(在R中)可以允许这样的任务.但我不知道如何使用它们.所以我希望拥有的是:1.关于如何构建这样的代码的一些建议.2.并建议如何学习执行此类任务所需的知识.
谢谢你的帮助,
塔尔
我希望对我正在处理的数据集实施"最后一次观察结果",该数据集在结尾处缺少值.
这是一个简单的代码(问题之后):
LOCF <- function(x)
{
# Last Observation Carried Forward (for a left to right series)
LOCF <- max(which(!is.na(x))) # the location of the Last Observation to Carry Forward
x[LOCF:length(x)] <- x[LOCF]
return(x)
}
# example:
LOCF(c(1,2,3,4,NA,NA))
LOCF(c(1,NA,3,4,NA,NA))
Run Code Online (Sandbox Code Playgroud)
现在这适用于简单的矢量.但是,如果我在数据框上尝试使用它:
a <- data.frame(rep("a",4), 1:4,1:4, c(1,NA,NA,NA))
a
t(apply(a, 1, LOCF)) # will make a mess
Run Code Online (Sandbox Code Playgroud)
它会将我的数据框转换为字符矩阵.
你能想到一种在data.frame上做LOCF的方法,而不用把它变成矩阵吗?(我可以使用循环等来纠正混乱,但是会喜欢更优雅的解决方案)
干杯,
塔尔
我刚刚得到以下情节:

并想知道如何在R中完成?(或其他软件)
更新10.03.11:感谢所有参与回答此问题的人 - 您提供了很棒的解决方案!我在我的博客上的帖子中编译了这里提供的所有解决方案(以及我在网上发布的其他一些解决方案).
我想通过API代码从MARVEL DEVELOPER中提取数据并对其进行分析(使用R).
我从MARVEL网站获得以下网址:http://gateway.marvel.com:80/v1/public /characters?apikey = f389fcb49ad574e10ca570867f4bfa43
我使用httr包来收集数据:
install.packages("httr")
library(httr)
> url <- GET("http://gateway.marvel.com:80/v1/public/characters?orderBy=name&limit=100&apikey=f389fcb49ad574e10ca570867f4bfa43")
> content(url)
$code
[1] "MissingParameter"
$message
[1] "You must provide a hash."
Run Code Online (Sandbox Code Playgroud)
我想将所有这些数据提取到R.我应该做什么/读什么?
谢谢.
我试图提取聚类中使用的颜色circlize_dendrogram.这是一个示例代码:
library(magrittr)
library(dendextend)
cols <- c("#009000", "#FF033E", "#CB410B", "#3B444B", "#007FFF")
dend <- iris[1:40,-5] %>% dist %>% hclust %>% as.dendrogram
dend <- color_branches(dend, k = 5, col = cols)
dend %<>% set("labels_col", value = cols, k= 5)
dend %<>% set("labels_cex", .8)
dend %<>% set("branches_lwd", 2)
circlize_dendrogram(dend)
Run Code Online (Sandbox Code Playgroud)
以便使用提取列表簇cutree(dend, k = 5).有没有办法根据cols给定的?提取树形图中簇的颜色?我需要它来使用grid包在图中插入图例.
示例,图例:群集1 - #009000; 集群2 - #FF033E; 集群3 - #CB410B; 集群4 - #3B444B; 集群5 - #007FFF.问题circlize_dendrogram是用于群集的颜色的顺序是不同的.
虽然我可以手动执行此操作,但如果我可以自动执行此操作会很有效.如果我可以提取簇的颜色,这是可能的.
我正在使用dendextend在R中绘制Tanglegrams.我想知道是否有可能使用多个子图par(mfrow = c(2,2))?
我似乎无法弄明白.
谢谢
library(dendextend)
dend15 <- c(1:5) %>% dist %>% hclust(method = "average") %>% as.dendrogram
dend15 <- dend15 %>% set("labels_to_char")
dend51 <- dend15 %>% set("labels", as.character(5:1)) %>% match_order_by_labels(dend15)
dends_15_51 <- dendlist(dend15, dend51)
par(mfrow = c(2,2))
tanglegram(dends_15_51)
tanglegram(dends_15_51)
tanglegram(dends_15_51)
tanglegram(dends_15_51)
Run Code Online (Sandbox Code Playgroud) 我知道我可以使用ls()和rm()来查看和删除环境中存在的对象.
但是,在处理"旧".RData文件时,有时需要选择一个环境来查找要保留的内容和要遗漏的内容.
我想做的是,有一个类似GUI的界面,允许我查看对象,对它们进行排序(例如,按大小排序),并删除我不需要的对象(例如,通过检查 - 盒子界面).既然我认为这样的系统目前还没有在R中实现,那么有哪些方法呢?你用什么来清理旧的.RData文件?
谢谢,
塔尔
我希望使用R将用ANSI编码的HTML文件转换为UTF-8.
是否有工具或工具组合可以使这项工作?
谢谢.
编辑:好的,我把我的问题缩小到了另一个.它重新发布在这里: 使用"cat"将非英文字符写入.html文件(在R中)
我想将"pander"功能设置为编译knitr rmarkdown文档时的替代"打印"功能.像这样(在R中运行的代码示例):
require(pander)
print <- function(...) pander(..., style = "rmarkdown") # makes sure that everyhing that everyprint will pass through pander
summary(cars)
Run Code Online (Sandbox Code Playgroud)
这将导致:
> summary(cars)
----------------------------------
speed dist
------ ------------ --------------
**** Min. : 4.0 Min. : 2.00
**** 1st Qu.:12.0 1st Qu.: 26.00
**** Median :15.0 Median : 36.00
**** Mean :15.4 Mean : 42.98
**** 3rd Qu.:19.0 3rd Qu.: 56.00
**** Max. :25.0 Max. :120.00
----------------------------------
Run Code Online (Sandbox Code Playgroud)
这样,我将使所有表格格式化,而不是手动需要在整个文档中写"pander"(想象我必须在文档中写"摘要(汽车)20次,更改"打印"将保存我写pander(摘要(汽车))).
那可能吗?(还是有一种我不知道的更聪明的方式?)
谢谢.
更新:.rmd文件的示例:
TEST
====
```{r}
require(pander)
print <- function(...) …Run Code Online (Sandbox Code Playgroud) r ×10
dendextend ×2
ansi ×1
api ×1
apply ×1
dataframe ×1
dendrogram ×1
encoding ×1
file-upload ×1
ftp ×1
httr ×1
knitr ×1
matrix ×1
plot ×1
r-markdown ×1
utf-8 ×1
web-scraping ×1