Quantcast
Channel: கணியம்
Viewing all articles
Browse latest Browse all 1914

NumPy அறிமுகம் – ARRAY ATTRIBUTES & ARRAY CREATION ROUTINES

$
0
0

1. NUMPY − ARRAY ATTRIBUTES

1.1. ndarray.shape

shape attribute என்பது NumPy array-இன் அமைப்பை (structure) குறிக்கிறது. இது array-இல் எத்தனை rows மற்றும் columns உள்ளன என்பதை சொல்கிறது.

எந்த ஒரு array-யும் கையாளும்போது, அதன் shape attribute மூலம் array-இன் பரிமாணங்களை (dimensions) அறிந்து கொள்ளலாம். shape attribute-ல் உள்ள values array-இல் உள்ள rows மற்றும் columns எண்ணிக்கையை தருகின்றன.

Input:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])
print("Shape of array:", arr.shape)

மேலே கொடுக்கப்பட்டுள்ள code-இல், arr என்ற 2D array உருவாக்கப்பட்டுள்ளது. இந்த array-இன் shape attribute-ஐ பயன்படுத்தி array-இன் அமைப்பை அறியலாம்.

அதாவது, இதன் output:

Shape of array: (2, 3)

இந்த array-இல் 2 rows மற்றும் 3 columns உள்ளன என்று பொருள்.

இதன் மூலம், shape attribute ஒரு Numpy array-இன் கட்டமைப்பை (structure) முழுமையாக குறிக்க உதவுகிறது.

1.2. ndarray.ndim

ndim என்பது array-இன் பரிமாணங்களின் எண்ணிக்கையை (number of dimensions) குறிக்கிறது. NumPy array-களின் பரிமாணங்களை புரிந்து கொள்ள இது மிகவும் முக்கியமான attribute ஆகும்.

ஒரு array எத்தனை dimension-களை கொண்டுள்ளது என்பதை ndim attribute-ஐ பயன்படுத்தி எளிதில் அறிய முடியும். இதன் உதவியால், 1D, 2D அல்லது multi-dimensional array என்பதை நம்மால் அறிய முடியும்.

Input:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])
print("Number of dimensions:", arr.ndim)

மேலே கொடுக்கப்பட்டுள்ள code-இல், arr என்ற 2D array உருவாக்கப்பட்டுள்ளது. இந்த array-இன் ndim attribute-ஐ பயன்படுத்தி array-இன் பரிமாணங்களின் எண்ணிக்கையை (number of dimensions) அறியலாம்.

Output:

Number of dimensions: 2

2 என்று வரும்போது, இந்த array ஒரு 2D array என்று பொருள்.

இதன் மூலம், ndim attribute ஒரு Numpy array-இன் பரிமாணங்களின் எண்ணிக்கையை முழுமையாக அறிய உதவுகிறது.

1.3. numpy.itemsize

itemsize attribute ஒரு element-ஐ represent செய்ய memory-யில் எத்தனை bytes எடுக்கின்றது என்பதை அளிக்கிறது. இது, NumPy array-ல் உள்ள ஒவ்வொரு element-க்கும் memory allocation-ஐ எவ்வளவு எடுக்கும் என்பதை அறிய உதவுகிறது.

Input:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print("Item size of array:", arr.itemsize, "bytes")

இந்த code-இல், arr என்ற 1D array உருவாக்கப்பட்டுள்ளது, மற்றும் itemsize attribute-ஐ பயன்படுத்தி array-இன் ஒவ்வொரு element-ஐ memory-யில் represent செய்ய எவ்வளவு bytes எடுக்கின்றது என்பதை பார்க்கலாம்.

Output:

Item size of array: 8 bytes

8 bytes என்று வரும்போது, அந்த array-இல் உள்ள ஒவ்வொரு element-மும் 8 bytes அளவு memory-யைப் பயன்படுத்துகின்றது என்று பொருள்.

இதன் மூலம், itemsize attribute ஒரு Numpy array-இல் உள்ள ஒவ்வொரு element-இன் memory அளவை சரியாக அளக்க உதவுகிறது.

1.4. numpy.flags

flags attribute என்பது NumPy array-இன் memory layout-ஐ குறிக்கிறது. இது array-இன் உள்ளமைப்புகள் (properties) மற்றும் memory-இன் அடிப்படையில் array எவ்வாறு அமைக்கப்பட்டுள்ளது என்பதை விளக்குகிறது.

Input:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print("Flags of the array:\n", arr.flags)

இந்த code-இல், arr என்ற 1D array உருவாக்கப்பட்டுள்ளது, மற்றும் flags attribute-ஐ பயன்படுத்தி array-இன் memory layout பற்றிய தகவல்களை அறியலாம்.

Output:

Flags of the array:
  C_CONTIGUOUS : True
  F_CONTIGUOUS : False
  OWNDATA : True
  WRITEABLE : True
  ALIGNED : True
  WRITEBACKIFCOPY : False

இந்த flags attribute இவ்வாறு array-இன் memory layout பற்றிய விவரங்களை கொடுக்கிறது:

  • C_CONTIGUOUS: Array-இன் memory layout C-style (row-major) ஆக உள்ளது.

  • F_CONTIGUOUS: Array-இன் memory layout Fortran-style (column-major) ஆக இல்லை.

  • OWNDATA: Array-க்கு சொந்தமாக memory data இருக்கிறது.

  • WRITEABLE: Array-இல் உள்ள data மாற்றக்கூடியது.

  • ALIGNED: Data memory alignment சரியாக உள்ளது.

  • WRITEBACKIFCOPY: Write-back operation தேவைப்படும்போது False ஆகும்.

இதன் மூலம், flags attribute NumPy array-இன் memory layout மற்றும் array-இன் உள்ளமைப்புகள் பற்றிய முழு தகவல்களை வழங்குகிறது.

2. NUMPY − ARRAY CREATION ROUTINES

NumPy-ல் array-களை உருவாக்க பல்வேறு methods உள்ளன, அவற்றைப் பயன்படுத்தி data handling மற்றும் computation process-களை எளிதாக்கலாம். இப்போது, சில பொதுவாகப் பயன்படுத்தப்படும் array creation functions பற்றி விரிவாகப் பார்ப்போம்.

2.1. numpy.empty

numpy.empty( ) function ஒரு initialization values இல்லாத array-ஐ உருவாக்க பயன்படுகிறது. இதனால், array-இல் உள்ள values ஏதாவது முன்பே memory-யில் இருந்த random values ஆக இருக்கும். இதனால், memory-யில் உள்ள values reset செய்யப்படாமல், அந்த values array-இல் வரலாம்.

Input:

import numpy as np
empty_array = np.empty((2, 3))
print("Empty array:\n", empty_array)

இந்த code-இல், np.empty( ) function-ஐ பயன்படுத்தி 2 rows மற்றும் 3 columns கொண்ட ஒரு array உருவாக்கப்படுகிறது. இந்த array-இல் உள்ள values எல்லாம் எதுவும் initial values இல்லை. அதற்குப் பதிலாக, memory-யில் இருக்கும் junk values அல்லது random values array-இல் காணப்படும்.

Output:

Empty array:
 [[4.66651921e-310 0.00000000e+000 2.05833592e-312]
 [6.79038654e-313 2.14321575e-312 2.27053550e-312]]

இதில், array-இன் values எல்லாம் random values ஆக உள்ளன, ஏனெனில் numpy.empty( ) function memory-யில் ஏற்கனவே இருக்கும் data-ஐ பயன்படுத்தி array-ஐ உருவாக்குகிறது. இதனால், இந்த function array-ஐ மிக வேகமாக உருவாக்கும் ஆனால் initialization values கொடுக்காது.

  • numpy.empty( ) function பயன்படுத்தப்படும் போது array-இன் values எல்லாம் unpredictable ஆக இருக்கும்.

  • Performance அதிகம் தேவைப்படும் போது, initialization values-ஐ avoid செய்ய இந்த function மிகவும் உதவியாக இருக்கும்.

  • எப்போது values முக்கியமாக கருதப்படுகின்றனவோ, அப்போது numpy.zeros( ) அல்லது numpy.ones( ) போன்ற functions-ஐ பயன்படுத்துவது சிறந்தது.

இந்த function speed optimization தேவைப்படும் போது மிகவும் பயனுள்ளதாக இருக்கும், ஏனெனில் இது memory allocation மட்டும் செய்து, values-ஐ initialize செய்யாது.

2.2. numpy.zeros

zeros( ) function-ஐ பயன்படுத்தி, எல்லா elements-உம் 0 values கொண்ட ஒரு array-ஐ உருவாக்கலாம். இந்த function, array-இன் structure-ஐ (shape) user-defined shape-ஆக அமைத்து, அந்த shape-ஐ கொண்டு அனைத்து இடங்களிலும் 0 values-ஐ கொண்டு ஒரு array-ஐ return செய்யும்.

Input:

import numpy as np

zeros_array = np.zeros((2, 2))
print("Zeros array:\n", zeros_array)

Output:

Zeros array:
 [[0. 0.]
 [0. 0.]]

  • இங்கு np.zeros( ) function-ஐ பயன்படுத்தி, 2 rows மற்றும் 2 columns கொண்ட ஒரு array உருவாக்கப்பட்டுள்ளது. இந்த array-இன் எல்லா elements-ம் 0 values கொண்டவை.

  • numpy.zeros( ) function memory-யை allocate செய்து, எல்லா elements-க்கும் 0 values கொடுக்கும்.

  • இது, array-ஐ முழுமையாக 0 values கொண்டு initialize செய்ய விரும்பும் போது பயன்படும்.

  • zeros( ) function data initialization தேவையுள்ள போது மிகவும் பயனுள்ளதாக இருக்கும், ஏனெனில் இது memory-யை efficient-ஆக நிரப்பி array-ஐ உருவாக்குகிறது.

2.3. numpy.ones

ones( ) function-ஐ பயன்படுத்தி, எல்லா elements-உம் 1 values கொண்ட ஒரு array-ஐ உருவாக்கலாம். இந்த function, array-இன் structure-ஐ (shape) user-defined shape-ஆக அமைத்து, அந்த shape-ஐ கொண்டு அனைத்து இடங்களிலும் 1 values-ஐ கொண்டு ஒரு array-ஐ return செய்யும்.

Input:

import numpy as np

ones_array = np.ones((3, 3))
print("Ones array:\n", ones_array)

Output:

Ones array:
 [[1. 1. 1.]
 [1. 1. 1.]
 [1. 1. 1.]]
  • இங்கு np.ones( ) function-ஐ பயன்படுத்தி, 3 rows மற்றும் 3 columns கொண்ட ஒரு array உருவாக்கப்பட்டுள்ளது.

  • இந்த array-இன் எல்லா elements-ம் 1 values கொண்டவை.

இதன் மூலம், zeros( ) மற்றும் ones( ) functions மிகவும் பயனுள்ளதாக இருக்கும், ஏனெனில் அவை predictable values கொண்ட array-களை உருவாக்குகின்றன, computation-ஐ எளிதாக்குகின்றன.

தொடரும்

முனைவர் ப. தமிழ் அரசன்

tamilarasanbakthavatchalam@gmail.com


Viewing all articles
Browse latest Browse all 1914

Trending Articles


‘ஹன்சிகா நிர்வாண குளியல் வீடியோ': பதறிப்போன கோடம்பாக்கம்


மாமனார், மாமியாரை மருமக்களும் பராமரிப்பது கட்டாயம்: சட்ட திருத்தம் செய்ய...


கலப்படம் கலப்படம்


குழந்தை பிறந்த நேரம் எப்படி..? கண்டாந்தர நட்சத்திர தோசம்


ஆசீர்வாத மந்திரங்கள்


மாணிக்கவாசகர் பிறந்த ஊர்


மது போதையில் ஆட்டம், வீடியோவால் வந்த வினை... மாணவிகளுக்கு செக் வைத்த கல்லூரி.!


சகல தோஷமும் நிவர்த்தியாகும் ஸ்லோகம்


ஒன்பது கோடி முனிவர்கள் மற்றும் தேவர்களின் அருளை பெற்றுத்தரும் பதஞ்சலி காயத்ரி...


“உலகையே மிரள வைக்கும் “ திருநள்ளாறு சனீஸ்வரர் பகவான் !!