मैं कुछ आर कोड है जो मौजूदा निर्देशिका में सभी फ़ाइलों पर कुछ डेटा निष्कर्षण कार्रवाई निष्पादित करता है करने के लिए lapply से आउटपुट निकाला जा रहा है, निम्नलिखित कोड का उपयोग कर:एक dataframe
files <- list.files(".", pattern="*.tts")
results <- lapply(files, data_for_time, "17/06/2006 12:00:00")
lapply से उत्पादन होता है निम्नलिखित (निकाले dput()
का प्रयोग करके) - मूल रूप से वैक्टर से भरा एक सूची:
list(c("amer", "14.5"), c("appl", "14.2"), c("brec", "13.1"),
c("camb", "13.5"), c("camo", "30.1"), c("cari", "13.8"),
c("chio", "21.1"), c("dung", "9.4"), c("east", "11.8"), c("exmo",
"12.1"), c("farb", "14.7"), c("hard", "15.6"), c("herm",
"24.3"), c("hero", "13.3"), c("hert", "11.8"), c("hung",
"26"), c("lizr", "14"), c("maid", "30.4"), c("mart", "8.8"
), c("newb", "14.7"), c("newl", "14.3"), c("oxfr", "13.9"
), c("padt", "10.3"), c("pbil", "13.6"), c("pmtg", "11.1"
), c("pmth", "11.7"), c("pool", "14.6"), c("prae", "11.9"
), c("ral2", "12.2"), c("sano", "15.3"), c("scil", "36.2"
), c("sham", "12.9"), c("stra", "30.9"), c("stro", "14.7"
), c("taut", "13.7"), c("tedd", "22.3"), c("wari", "12.7"
), c("weiw", "13.6"), c("weyb", "8.4"))
हालांकि, मैं होता तो दो कॉलम के साथ एक dataframe के रूप में इस उत्पादन से निपटने के लिए की तरह है: वर्णमाला कोड के लिए एक ("amer"
, "appl"
आदि) और के लिए एक टी वह संख्या (14.5
, 14.2
आदि)।
दुर्भाग्यवश, as.data.frame
किसी सूची के अंदर नेस्टेड वैक्टरों के इस इनपुट के साथ काम नहीं कर रहा है। मुझे इसे बदलने के बारे में कैसे जाना चाहिए? क्या मुझे इस तरीके को बदलने की ज़रूरत है कि मेरा फ़ंक्शन data_for_time
इसके मान देता है? फिलहाल यह c(name, value)
देता है। या इस तरह के आउटपुट से डेटाफ्रेम में कनवर्ट करने का एक अच्छा तरीका है?
यदि आप का इस्तेमाल किया था '' एक और अधिक "नियमित" वस्तु lapply' आप मिल गया है हो सकता है के बजाय sapply'। –