தொகுதி பாடங்கள் (2/2)
நிபந்தனைகள் மற்றும் சுழல்கள்
R இல் சிக்கலான வழிமுறைகள் மற்றும் நடைமுறைகளைச் செயல்படுத்த, எந்த வழிமுறைகளை இயக்க வேண்டும் மற்றும் எத்தனை முறை மீண்டும் செய்ய வேண்டும் என்பதை நீங்கள் கட்டுப்படுத்த வேண்டும்.
நிபந்தனை அறிக்கைகள்
R இல், அடிப்படை நிபந்தனை அமைப்பு if மற்றும் else ஐ அடிப்படையாகக் கொண்டது. தொடரியல் ஜாவாஸ்கிரிப்ட் அல்லது சி போன்ற மொழிகளுடன் மிகவும் ஒத்திருக்கிறது:
score <- 85
if (score >= 60) {
print("Passed!")
} else {
print("Failed.")
}சுருள் பிரேஸ்கள் {} அடைப்புக்குறிக்குள் உள்ள பூலியன் வெளிப்பாட்டின் முடிவைப் பொறுத்து இயங்கும் குறியீட்டின் தொகுதிகளை வரையறுக்கிறது.
for லூப்
R இல் உள்ள for லூப் ஒரு வரிசையில் உள்ள உறுப்புகளுக்கு மேல் திரும்பப் பயன்படுத்தப்படுகிறது (வெக்டார் அல்லது பட்டியல் போன்றவை).
# Print numbers from 1 to 3
for (i in 1:3) {
print(i)
}R இல், 1:3 தொடரியல் என்பது திசையன் c(1, 2, 3) ஐ உருவாக்குவதற்கான சுருக்கெழுத்து வழியாகும்.
ஏற்கனவே இருக்கும் வெக்டரின் உறுப்புகள் மீதும் நாம் நேரடியாக வளையலாம்:
fruits <- c("apple", "banana", "cherry")
for (fruit in fruits) {
print(fruit)
}ifelse செயல்பாடு
R இல், ifelse() செயல்பாடு என்பது if-else அறிக்கையின் வெக்டரைஸ் செய்யப்பட்ட பதிப்பாகும். ஒரே செயல்பாட்டில் முழு திசையனுக்கும் ஒரு நிபந்தனையைப் பயன்படுத்த இது உங்களை அனுமதிக்கிறது, முடிவுகளின் திசையன் திரும்பும்.
scores <- c(55, 80, 45, 90)
# Se score >= 60 assegna "Pass", altrimenti "Fail"
results <- ifelse(scores >= 60, "Pass", "Fail")
print(results) # "Fail" "Pass" "Fail" "Pass"while லூப்
ஒரு குறிப்பிட்ட நிபந்தனை உண்மையாக இருக்கும் வரை (TRUE) குறியீட்டின் தொகுதியை மீண்டும் செய்ய while லூப் பயன்படுத்தப்படுகிறது. எல்லையற்ற சுழல்களைத் தடுக்க நிபந்தனை இறுதியில் தவறானதாக மாறுவதை உறுதி செய்வது அவசியம்.
counter <- 1
while (counter <= 3) {
print(counter)
counter <- counter + 1
}நீங்களே முயற்சி செய்து பாருங்கள்
மாறி மதிப்பெண் 60 ஐ விட அதிகமாக உள்ளதா அல்லது அதற்கு சமமாக உள்ளதா என்பதை சரிபார்க்கும் if-else நிபந்தனை அறிக்கையை எழுதவும். அது இருந்தால், நிலையை 'Pass' என அமைக்கவும், இல்லையெனில் 'Fail' என அமைக்கவும்.
குறிப்பைக் காட்டு
சரிபார்ப்பு மதிப்பெண் >= 60 இ அசெக்னா நிலை <- 'பாஸ்' அல்லது நிலை <- 'தோல்வி'
3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்
1:5 வரிசைக்கு மேல் திரும்பும் மற்றும் அச்சு() செயல்பாட்டைப் பயன்படுத்தி ஒவ்வொரு மதிப்பையும் பிரிண்ட் செய்யும் லூப்பை எழுதவும்.
குறிப்பைக் காட்டு
Usa la sintassi: (i in 1:5) {print(i)}
3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்
வெக்டார் v கொடுக்கப்பட்டால், ஒவ்வொரு தனிமத்தின் மீதும் திரும்பும் மற்றும் அச்சு() ஐப் பயன்படுத்தி அதன் இரட்டிப்பை (val * 2) அச்சிடும் லூப்பிற்காக எழுதவும்.
குறிப்பைக் காட்டு
v இன் உறுப்புகள் மூலம் லூப்: (val in v) {print(val * 2)}
3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்
திசையன் மதிப்பெண்களின் அடிப்படையில், ifelse() செயல்பாட்டைப் பயன்படுத்தி, எந்த உறுப்புகள் 60ஐ விட அதிகமாகவோ அல்லது சமமாகவோ உள்ளன என்பதைச் சரிபார்க்கவும். மாறி முடிவுகளில் முடிவை (ஒவ்வொரு உறுப்புக்கும் 'பாஸ்' அல்லது 'ஃபெயில்' இருக்கும்) சேமிக்கவும்.
குறிப்பைக் காட்டு
செயல்பாட்டைப் பயன்படுத்தவும்: முடிவுகள் <- ifelse(மதிப்பெண்கள் >= 60, 'பாஸ்', 'ஃபெயில்')
3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்
x இன் மதிப்பை 50 ஐத் தாண்டும் வரை அதை இரட்டிப்பாக்க சிறிது நேர வளையத்தைப் பயன்படுத்தவும். ஒவ்வொரு மறு செய்கையிலும் எதிர் மாறியை அதிகரிக்கவும்.
குறிப்பைக் காட்டு
சிறிது நேர வளையத்தைப் பயன்படுத்தவும் (x <= 50) மற்றும் சுருள் பிரேஸ்களுக்குள் x மற்றும் கவுண்டர் இரண்டையும் புதுப்பிக்கவும்.
3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்