Code Nach arrangiert konsequent produziert Absturz auf meinem R System 3.2.2:Warum diese „segfault“ mit dplyr Funktion in R
> R.version
_
platform i486-slackware-linux-gnu
arch i486
os linux-gnu
system i486, linux-gnu
status
major 3
minor 2.2
year 2015
month 08
day 14
svn rev 69053
language R
version.string R version 3.2.2 (2015-08-14)
nickname Fire Safety
> lll = list(list(5,3,4), list(5,3,7), list(6,2,1), list(6,1,3), list(5,2,1))
> dd = data.frame(do.call(rbind, lll))
> dd
X1 X2 X3
1 5 3 4
2 5 3 7
3 6 2 1
4 6 1 3
5 5 2 1
> dplyr::arrange(dd, X1)
*** caught segfault ***
address (nil), cause 'memory not mapped'
Traceback:
1: .Call("dplyr_arrange_impl", PACKAGE = "dplyr", data, dots)
2: arrange_impl(.data, dots)
3: arrange_.tbl_df(tbl_df(.data), .dots = dots)
4: arrange_(tbl_df(.data), .dots = dots)
5: as.data.frame(arrange_(tbl_df(.data), .dots = dots))
6: arrange_.data.frame(.data, .dots = lazyeval::lazy_dots(...))
7: arrange_(.data, .dots = lazyeval::lazy_dots(...))
8: dplyr::arrange(dd, X1)
Possible actions:
1: abort (with core dump, if enabled)
2: normal R exit
3: exit R without saving workspace
4: exit R saving workspace
Warum dieser Absturz auftritt und wie kann ich es beheben?
Wie haben Sie dplyr installiert? – zwol
Die Spalten sind noch "liste", wenn Sie die 'str (dd)' überprüfen. Die 'lll' ist eine verschachtelte Liste. Sie können brauchen 'dd <- data.frame (do.call (rbind, lapply (lll, unlist)))' – akrun
Was ist der beste Weg, 'lll' in einen Datenrahmen zu konvertieren? – rnso