उदाहरण के लिए, मैं वर्तमान में एक फ़ंक्शन पर काम कर रहा हूं जो आपको यह देखने की अनुमति देता है कि यदि आपने शेयर बाजार में निवेश किया है तो आपके पास कितना पैसा हो सकता है। यह वर्तमान में एक लूप संरचना का उपयोग कर रहा है, जो वास्तव में मुझे परेशान कर रहा है, क्योंकि मुझे पता है कि शायद इसे कोड करने और आर में लीवरेज वैक्टर का एक बेहतर तरीका है। मैं फ़ंक्शन चलाने से पहले डमी वैक्टर भी बना रहा हूं, जो थोड़ा अजीब लगता है।क्या आर में कार्यों को सरल बनाने का कोई तरीका है जो लूप का उपयोग करते हैं?
अभी भी आर में एक शुरुआत (बस शुरू हुआ!), इसलिए किसी भी सहायक मार्गदर्शन की अत्यधिक सराहना की जाती है!
set.seed(123)
##Initial Assumptions
initialinvestment <- 50000 # e.g., your starting investment is $50,000
monthlycontribution <- 3000 # e.g., every month you invest $3000
months <- 200 # e.g., how much you get after 200 months
##Vectors
grossreturns <- 1 + rnorm(200, .05, .15) # approximation of gross stock market returns
contribution <- rep(monthlycontribution, months)
wealth <- rep(initialinvestment, months + 1)
##Function
projectedwealth <- function(wealth, grossreturns, contribution) {
for(i in 2:length(wealth))
wealth[i] <- wealth[i-1] * grossreturns[i-1] + contribution[i-1]
wealth
}
##Plot
plot(projectedwealth(wealth, grossreturns, contribution))
इस तरह से ऐसा करने का क्या फायदा है? – Ruben
कोई नहीं, व्यावहारिक रूप से। यह उन लोगों के लिए अधिक मूर्खतापूर्ण है जो कार्यात्मक रूप से सोचते हैं। लेकिन जमा करने के साथ 'कम करें' बस लूप के लिए एक अच्छी तरह से लागू किया गया है। जैसा कि कहा गया है, प्रश्न में 'लूप' के उपयोग के साथ कुछ भी गलत नहीं है। –