எளிய தமிழில் Pandas-2

Row & Column References

 

மூன்று மாணவர்கள் மற்றும் ஐந்து பாடங்களை வெறும் எண்களால் குறிப்பிடாமல் அவற்றுக்கான பெயர்களை வைத்துக் குறிப்பிட்டால் அணுகுவதற்கும், புரிந்துகொள்வதற்கும் இன்னும் சுலபமாக இருக்கும் அல்லவா? அதற்காகத்தான் இன்டெக்ஸ் மற்றும் columns ஆகிய பண்புகள் பயன்படுகின்றன.

இவைகளைப் பயன்படுத்தி எழுதப்பட்டுள்ள நிரல் பின்வருமாறு.


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

%d bloggers like this: