إعادة ترتيب الأعمدة dataframe بينما يتجاهل الأعمدة مجهولة الهوية
سؤال
وأنا أفكر هناك يجب أن تكون هناك طريقة أفضل للقيام بذلك.
وأنا أحاول أن إعادة ترتيب الأعمدة في dataframe. لدي قائمة، ordered.colnames
، وهو ما يمثل التنظيم الجديد - ولكن بعض الأعمدة غير موجودة في dataset
. لتجنب خطأ "undefined columns selected
" لقد التفاف تشريح ذات الصلة في وظيفة try()
.
والأعمال الطريقة التالية، ولكن هل هناك طريقة أفضل للقيام بذلك؟
> ordered.colnames[1:5]
[1] "lady_22102" "attentions_83249" "perseverance_17864"
[4] "cecil_84477" "cecilia_133476"
dataset.reordered = c()
for (i in 1:length(ordered.colnames)) {
col = NA
col = try(cbind(dataset[,ordered.colnames[i]]),silent=TRUE)
if (!inherits(col,"try-error")) {
colnames(col) = ordered.colnames[i]
dataset.reordered = cbind(dataset.reordered, col)
}
}
المحلول
ولا يمكنك فقط القيام بذلك؟
ordered.colnames <- ordered.colnames[ordered.colnames %in% colnames(dataset)]
لا تنتمي إلى StackOverflow