चीयर्स, मेरे पास निम्न संरचना के साथ दो डेटा फ्रेम हैं।एकाधिक स्थितियों से डेटाफ्रेम के कॉलम को मिलान और प्रतिस्थापित करें
DF1:
Airlines HeadQ Date Cost_Index
American PHX 07-31-2016 220
American ATL 08-31-2016 150
American ATL 10-31-2016 150
Delta ATL 10-31-2016 180
American ATL 08-31-2017 200
दूसरा डेटा फ्रेम DF2 निम्नलिखित संरचना है:
DF2:
Airlines HeadQ Date
American ATL 09-30-2016
Delta ATL 03-31-2017
अब डेटा के साथ लग रही फ्रेम DF1 और DF2, मैं निम्नलिखित डेटा फ्रेम करने के लिए DF1 को बदलने के लिए चाहते हैं।
DF1:
Airlines HeadQ Date Cost_Index
American PHX 07-31-2016 220
American ATL 08-31-2016 0
American ATL 10-31-2016 150
Delta ATL 10-31-2016 180
American ATL 08-31-2017 200
हालत, है एयरलाइंस और DF2 से DF1 की headq के लिए खोज और अगर DF1 $ तिथि < DF2 $ तिथि तो 0 के रूप में Cost_Index बनाने वरना Cost_Index साथ जारी रखें।
मैंने कोशिश की, लेकिन विफल रहने, साथ:
DF1$Cost_Index <- ifelse(DF1$Airlines == DF2$Airlines & DF1$HeadQ == DF2$HeadQ
& DF1$Date < DF2$Date, 0, DF1$Cost_Index)
Warning:
1: In DF1$Airlines == DF2$Airlines : longer object
length is not a multiple of shorter object length".
2: In<=.default(DF1$Date, DF2$Date) : longer object length is not a
multiple of shorter object length
DF1:
Airlines HeadQ Date Cost_Index
American PHX 07-31-2016 220
American ATL 08-31-2016 0
American ATL 10-31-2016 0
Delta ATL 10-31-2016 0
American ATL 08-31-2017 200
किसी को भी सही दिशा करने के लिए मुझसे बात कर सकते हैं?
नोट:
str(DF1$Date): Date, format: "2016-10-31"
str(DF2$Date): Date, format: "2016-08-31"
जब है कि डेटा से संबंधित समस्याओं पेश वास्तव में इसकी तारीखें हमें अपना मूल डेटा प्रदान करने के लिए सबसे अच्छा है ताकि हम जान सकें कि आप किसके साथ काम कर रहे हैं, क्या आप इसे प्रदान कर सकते हैं? या कम से कम '' str (DF1) '' –
बस डेटा फ्रेम की संरचना को जोड़ा गया: @Cyrus Mohammadian –
क्या आपको कोई त्रुटि मिल रही है? यदि नहीं, तो आपके उपरोक्त कोड का क्या उत्पादन हुआ है? –