r - subset dataframe based on conditions in vector -


मेरे पास दो डेटाफ्रेम हैं

  # df1 प्रकार & lt; - c ("A", "बी", "सी") दिन_स्टार्ट & lt; - c (5,8,4) दिन_एंड & lt; - c (12,10,11) df1 & lt; - cbind.data.frame (प्रकार, दिन_स्टाट, दिन_एंड) df1 प्रकार दिन_स्टार दिवस_एंड 1 ए 5 12 2 बी 8 10 3 सी 4 11 # डीएफ 2 मान & lt; - 1:10 दिन & lt; - 4:13 df2 & lt; - cbind.data.frame (दिन, मान) दिन का मान 1 4 1 2 5 2 3 6 3 4 7 4 5 8 5 6 9 6 7 10 7 8 11 8 9 12 9 10 13 10 मैं डीएफ 2 को सबसे कम करना चाहूंगा जैसे कि प्रत्येक स्तर का कारक " प्रकार "में डीएफ 1 को अपना डेटाफ़्रेम मिलता है, केवल इस घटक स्तर के दिन_स्टाट और दिन_एन्ड के बीच की पंक्तियों / दिनों के साथ।  

" ए "के लिए वांछित परिणाम होगा ..

  सूची_ऑफ़_डेटाफ़्रेम $ df_A दिन का मान 1 5 2 2 6 3 3 7 4 4 8 5 5 9 6 6 10 7 7 11 8 8 12 9 मैं उत्तर में उत्तर के साथ SO पर पाया मप्पली () का उपयोग करने के लिए कहेगा, हालांकि, मैं समझ नहीं सकता कि मेरे डेटा को फिट करने के लिए मुझे दिए गए कोड को कैसे अनुकूलित करना है और इच्छित परिणाम .. क्या कोई मेरी मदद कर सकता है?   

< Div class = "post-text" itemprop = "text">

निम्न समाधान यह मानते हैं कि आपके पास दिनों के लिए पूर्णांक मान हैं, लेकिन यदि यह धारणा उचित है, तो यह आसान एक-लाइनर है:

 <कोड> & gt; [3],]) [[1]] दिन का मूल्य 2 5 2 3 6 3 4 7 4 5 8 5 6 लागू करें (df1, 1, function (x) df2 [df2 $ x% x% 2]: x [3],] 9 6 7 10 7 8 11 8 9 12 9 [[2]] दिन का मूल्य 5 8 5 6 9 6 7 10 7 [[3]] दिन का मान 1 4 1 2 5 2 3 6 3 4 7 4 5 8 5 6 9 6 7 10 7 8 11 8  

आप सूची में डेटाफ्रेम के नाम के लिए setNames का उपयोग कर सकते हैं:

  setNames (  
< / html>

Comments