तीन टॉप रेटेड जवाब एक कमजोरी है।
यदि आपका डेटाफ्रेम ऐसा दिखता है
df <- data.frame(Time=c(1,2), In=c(2,3), Out=c(3,4), Files=c(4,5))
> df
Time In Out Files
1 1 2 3 4
2 2 3 4 5
तो यह उपयोग करने के लिए एक गरीब समाधान है
> df2[,c(1,3,2,4)]
यह काम करता है, लेकिन आपने अपने इनपुट में कॉलम के आदेश पर निर्भरता का परिचय दिया है।
भंगुर प्रोग्रामिंग की इस शैली से बचा जाना है।
स्तंभों का स्पष्ट नामकरण एक बेहतर समाधान है
data[,c("Time", "Out", "In", "Files")]
इसके अलावा, यदि आप अधिक सामान्य सेटिंग में अपने कोड का पुन: उपयोग करने का इरादा रखते हैं, तो आप बस कर सकते हैं
out.column.name <- "Out"
in.column.name <- "In"
data[,c("Time", out.column.name, in.column.name, "Files")]
जो काफी अच्छा भी है क्योंकि यह शाब्दिक रूप से अलग करता है। इसके विपरीत, यदि आप dplyr का उपयोग करते हैंselect
data <- data %>% select(Time, out, In, Files)
फिर आप उन लोगों को सेट कर रहे होंगे जो आपके कोड को बाद में पढ़ेंगे, खुद को शामिल किया जाएगा, एक धोखे के लिए। कॉलम नामों को कोड में प्रदर्शित किए बिना शाब्दिक के रूप में उपयोग किया जा रहा है।
help(Extract)
के रूप में भी जाना जाता है?'['