Row & Column References
மூன்று மாணவர்கள் மற்றும் ஐந்து பாடங்களை வெறும் எண்களால் குறிப்பிடாமல் அவற்றுக்கான பெயர்களை வைத்துக் குறிப்பிட்டால் அணுகுவதற்கும், புரிந்துகொள்வதற்கும் இன்னும் சுலபமாக இருக்கும் அல்லவா? அதற்காகத்தான் இன்டெக்ஸ் மற்றும் columns ஆகிய பண்புகள் பயன்படுகின்றன.
இவைகளைப் பயன்படுத்தி எழுதப்பட்டுள்ள நிரல் பின்வருமாறு.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import pandas as pd | |
l1 = [90,83,67,83,45] | |
l2 = [[90,83,67,83,45],[68,89,75,56,73],[58,88,60,90,100]] | |
df = pd.DataFrame(l2) | |
print (df) | |
print (df[2]) | |
print (df[:2]) | |
print (df[-2:]) | |
df = pd.DataFrame(l2,columns=['Tamil','English','Maths','Science','Social'],index=['Ramesh','Suresh','Kamesh'],dtype='int32') | |
print (df) | |
print (df['Maths']) | |
print (df[:'Suresh']) | |
print (df['Suresh':]) | |
s = pd.Series(l1,index=['Tamil','English','Maths','Science','Social']) | |
print (s[['Tamil','Social']]) |
நிரலுக்கான விளக்கம்:
முதலில் பின்வருமாறு ஒரு டேட்டாஃப்பிரேமை உருவாக்கிக் கொள்ளவும்.
l2 = [[90,83,67,83,45],[68,89,75,56,73],[58,88,60,90,100]]
df = pd.DataFrame(l2)
print (df)
0 1 2 3 4
0 90 83 67 83 45
1 68 89 75 56 73
2 58 88 60 90 100
df[2] என்பது 2 எனும் column எண்ணைக் கொண்ட சீரீசை வெளிப்படுத்தும்.
print (df[2])
0 67
1 75
2 60
Name: 2, dtype: int64
df[:2] என்பது colon-க்கு முன்னால் ஏதேனும் எண் குறிப்பிடப்பட்டிருப்பின் அதிலிருந்து தொடங்கி, colon-க்கு அடுத்து குறிப்பிடப்பட்டுள்ள எண்ணுக்கு முந்தைய எண் வரை இருக்கும் பெயர்களைக் கொண்ட rows-ஐ வெளிப்படுத்தும்.
print (df[:2])
0 1 2 3 4
0 90 83 67 83 45
1 68 89 75 56 73
df[-2:] என்பது கீழிருந்து மேல் வாக்கில் கொடுக்கப்பட்டுள்ள எண்ணுக்கு ஏற்றவாறு rows-ஐ வெளிப்படுத்தும்.
print (df[-2:])
0 1 2 3 4
1 68 89 75 56 73
2 58 88 60 90 100
இவ்வாறு வெறும் எண்களை வைத்து அணுகாமல், ஒரு டேட்டாஃப்பிரேமை உருவாகும்போதே என்னென்ன row-க்கு என்னென்ன பெயர் மற்றும் என்னென்ன column-க்கு என்னென்ன பெயர் என்பதைக் கொடுத்து உருவாக்கினால் நமக்கு வேண்டிய rows மற்றும் columns-ஐ எடுப்பதற்கும் அணுகுவதற்கும் சுலபமாக இருக்கும். rows-க்கான பெயர்களைக் குறிப்பிட இன்டெக்ஸ் பயன்படுகிறது. columns-க்கான பெயர்களைக் குறிப்பிட columns பயன்படுகிறது. இது பின்வருமாறு.
df = pd.DataFrame(l2,columns=[‘Tamil’,’English’,’Maths’,’Science’,’Social’],index=[‘Ramesh’,’Suresh’,’Kamesh’],dtype=’int32′)
print (df)
Tamil English Maths Science Social
Ramesh 90 83 67 83 45
Suresh 68 89 75 56 73
Kamesh 58 88 60 90 100
df[‘Maths’] என்பது Maths எனும் பெயரைக் கொண்ட column-ஐ வெளிப்படுத்தியுள்ளது.
print (df[‘Maths’])
Ramesh 67
Suresh 75
Kamesh 60
Name: Maths, dtype: int32
df[:’Suresh’] என்பது colon-க்கு முன் எதுவும் கொடுக்கப்படவில்லையாதலால் முதலிலிருந்து துவங்கி சுரேஷ் என்னும் பெயரைக் கொண்ட row வரும் வரை வெளிப்படுத்தியுள்ளது.
print (df[:’Suresh’])
Tamil English Maths Science Social
Ramesh 90 83 67 83 45
Suresh 68 89 75 56 73
df[‘Suresh’:] என்பது colon-க்கு அடுத்து எதுவும் கொடுக்கப்படவில்லையாதலால், சுரேஷ் இலிருந்து துவங்கி கடைசி row வரை வெளிப்படுத்தியுள்ளது.
print (df[‘Suresh’:])
Tamil English Maths Science Social
Suresh 68 89 75 56 73
Kamesh 58 88 60 90 100
ஆனால் சீரீஸ் உருவாக்கும் போது தரவுகளுக்குப் பெயர் கொடுக்க இன்டெக்ஸ் என்ற பண்பு மட்டுமே பயன்படும். ஏனெனில் இது ஒரு பரிமாணத் தரவுகள் ஆதலால் columns என்ற பண்பு இராது.
l1 = [90,83,67,83,45]
s = pd.Series(l1,index=[‘Tamil’,’English’,’Maths’,’Science’,’Social’])
print (s[[‘Tamil’,’Social’]])
Tamil 90
Social 45
dtype: int64