2013-12-19 2 views
0

Есть ли возможность вычислить сетевую статистику с помощью графической схемы. Я пробовал это ранее, и есть некоторые доступные инструменты, но не так. Другие утилиты, такие как ultimatnet, быстрее.изменение формата в R

ответ

1

Трудно ответить на вопросы о необычных пакетах без воспроизводимых примеров. Обратите внимание, как я загружаю примерный файл данных из пакета, чтобы другие могли воспроизвести мой пример.

library(ape) 
library(phytools) 
data("hivtree.newick") 
tree = read.tree(hivtree.newick) 
str(tree) 

# List of 4 
# $ edge  : int [1:384, 1:2] 194 195 196 197 198 199 200 201 202 203 ... 
# $ Nnode  : int 192 
# $ tip.label : chr [1:193] "A97DCA1EQTB52" "A97DCA1MBFE185" "A97DCA1MBS12" "A97DCA1MBS30" ... 
# $ edge.length: num [1:384] 0.012112 0.000001 0.015665 0.029972 0.003031 ... 
# - attr(*, "class")= chr "phylo" 
# - attr(*, "order")= chr "cladewise" 

Наше первое замечание состоит в том, что эта структура имеет только текстовые метки для подсказок 193. Поэтому мы не можем надеяться получить текстовые метки для внутренних узлов от tree, так как они не хранятся в tree. Однако дерево имеет узлы с номерами от 1 до 385; мы можем выяснить, какие номера узлов являются внутренними с getDescendants функции:

is.internal = sapply(1:385, function(x) length(getDescendants(tree, x)) > 1) 
which(is.internal) 
# [1] 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 
# [22] 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 
# [43] 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 
# [64] 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 
# [85] 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 
# [106] 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 
# [127] 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 
# [148] 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 
# [169] 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 
# [190] 383 384 385 
+0

хорошо видеть, что это возможно ... только в случае, если вы знаете, пакеты немного есть шанс, чтобы узнать о времени узлов в файле? а не длину края, но время от кончиков дерева? – user3069326

+0

Извините, я ничего не знаю об этих пакетах (или филогенетике, если на то пошло). Однако простой поиск в документации пакета предполагает, что 'branching.times' в пакете ape может быть тем, что вы ищете? – josliber

+0

Одна быстрая вещь - кажется, со страницы вашего профиля, что вы никогда не поддерживали ответ или не принимали ответа, хотя вы получили довольно хорошие ответы на свои вопросы. Перенос и принятие - важная часть использования веб-сайта StackOverflow. – josliber

Смежные вопросы