मैं दो डेटा फ्रेम के रूप में निम्नानुसार है:बदलने मूल्यों
0.62m 0.87m 1.12m 1.37m
25 0.011 0.017 0.009 0.025
26 0.043 0.018 0.016 0.035
27 0.057 0.052 0.048 0.035
28 0.067 0.062 0.030 0.048
29 0.095 0.111 0.085 0.067
30 0.121 0.101 0.070 0.074
31 0.098 0.112 0.108 0.095
32 0.086 0.096 0.076 0.080
33 0.103 0.104 0.078 0.082
34 0.120 0.108 0.092 0.091
35 0.104 0.111 0.107 0.094
टेस्ट 2 ऐसा दिखाई देता है:
test1 <- structure(list(`0.62m` = c(0.011, 0.043, 0.057, 0.067, 0.095,
0.121, 0.098, 0.086, 0.103, 0.12, 0.104), `0.87m` = c(0.017,
0.018, 0.052, 0.062, 0.111, 0.101, 0.112, 0.096, 0.104, 0.108,
0.111), `1.12m` = c(0.009, 0.016, 0.048, 0.03, 0.085, 0.07, 0.108,
0.076, 0.078, 0.092, 0.107), `1.37m` = c(0.025, 0.035, 0.035,
0.048, 0.067, 0.074, 0.095, 0.08, 0.082, 0.091, 0.094)), .Names = c("0.62m",
"0.87m", "1.12m", "1.37m"), row.names = 25:35, class = c("tbl_df",
"tbl", "data.frame"))
#Test 2
test2 <- structure(list(`0.62m` = c(235.15, 230.95, 251.95, 261.25, 254.55,
251.75, 259.85, 257.65, 252.55, 255.55, 254.15), `0.87m` = c(287.95,
196.35, 275.05, 245.85, 253.35, 259.75, 254.95, 261.75, 253.05,
264.45, 264.25), `1.12m` = c(36.35, 242.95, 266.65, 266.45, 248.85,
256.95, 253.75, 268.25, 251.05, 268.85, 259.65), `1.37m` = c(20.65,
287.95, 260.25, 260.55, 255.25, 258.45, 248.45, 261.95, 253.45,
263.25, 252.05)), .Names = c("0.62m", "0.87m", "1.12m", "1.37m"
), row.names = 25:35, class = c("tbl_df", "tbl", "data.frame"
))
टेस्ट 1 ऐसा दिखाई देता
0.62m 0.87m 1.12m 1.37m
25 235.15 287.95 36.35 20.65
26 230.95 196.35 242.95 287.95
27 251.95 275.05 266.65 260.25
28 261.25 245.85 266.45 260.55
29 254.55 253.35 248.85 255.25
30 251.75 259.75 256.95 258.45
31 259.85 254.95 253.75 248.45
32 257.65 261.75 268.25 261.95
33 252.55 253.05 251.05 253.45
34 255.55 264.45 268.85 263.25
35 254.15 264.25 259.65 252.05
अब, मैं एक नया डेटाफ्रेम test3 बनाना चाहता हूं जहां मुझे यह जांचने की आवश्यकता है कि test2 में मान 1 से अधिक है या नहीं 80 या नहीं। यदि मान 180 से अधिक है, तो तत्व test1 के समान होना चाहिए अन्यथा यह -1 * test1 होना चाहिए। एक अन्य विधि
test3 <- ifelse(test2 > 180, test1, -1 * test1)
:
वांछित ouput निम्नलिखित दिखाई देगा:
0.62m 0.87m 1.12m 1.37m
25 0.011 0.017 -0.009 -0.025
26 0.043 0.018 0.016 0.035
मैं निम्नलिखित की कोशिश की
test3 <- data.frame(sapply(X = test1, FUN = function(x) (ifelse(test2>180, x, - 1*x))))
मुझे लगता है कि मैं लागू उपयोग करने की आवश्यकता है, लेकिन सुनिश्चित नहीं है कि इसका सही तरीके से उपयोग कैसे करें।
मुझे लगता है कि आपके डेटा सेट को मेट्रिस में कनवर्ट करने के बाद आपका पहला दृष्टिकोण काम करना चाहिए। –