نوع داده‌های NumPy

نوع داده‌های Python

به طور پیش‌فرض، Python دارای نوع داده‌های زیر است:

  • strings - برای نمایش داده‌های متن، که با نقل قول‌ها نوشته می‌شوند. مثلاً "ABCD".
  • integer - برای نمایش اعداد صحیح. مثلاً -1، -2، -3.
  • float - برای نمایش اعداد اعشاری. مثلاً 1.2، 42.42.
  • boolean - برای نمایش True یا False.
  • complex - برای نمایش اعداد در میدان‌های پیچیده. مثلاً 1.0 + 2.0j، 1.5 + 2.5j.

نوع داده‌های NumPy

NumPy نوع داده‌های اضافی دارد و نوع داده‌ها را با یک کاراکتر ارجاع می‌دهد، مثلاً i مثلاً برای عدد صحیح.u مثلاً برای عدد صحیح بی‌سیم.

در اینجا لیست تمام نوع داده‌های NumPy و کاراکترهای مورد استفاده برای نمایش آن‌ها آورده شده است.

  • i - عدد صحیح
  • b - بولین
  • u - عدد صحیح بی‌سیم
  • f - عدد اعشاری
  • c - عدد اعشاری پیچیده
  • m - timedelta
  • M - datetime
  • O - شیء
  • S - رشته
  • U - رشته unicode
  • V - بلوک حافظه با نوع داده ثابت دیگر (void)

بررسی نوع داده آرایه

شیء آرایه NumPy یک نام به نام dtype ویژگی، که نوع داده آرایه را برمی‌گرداند:

مثال

نوع داده شیء آرایه را دریافت کنید:

import numpy as np
arr = np.array([1, 2, 3, 4])
print(arr.dtype)

اجرای مثال

مثال

نوع داده آرایه‌ای که شامل رشته‌ها است را دریافت کنید:

import numpy as np
arr = np.array(['apple', 'banana', 'cherry'])
print(arr.dtype)

اجرای مثال

با استفاده از نوع داده تعریف شده آرایه ایجاد کنید

ما از array() تابع برای ایجاد آرایه، که می‌تواند پارامترهای اختیاری را استفاده کند:dtype، این به ما اجازه می‌دهد تا نوع داده پیش‌بینی شده عناصر آرایه را تعریف کنیم:

مثال

با استفاده از رشته نوع داده آرایه ایجاد کنید:

import numpy as np
arr = np.array([1, 2, 3, 4], dtype='S')
print(arr)
print(arr.dtype)

اجرای مثال

برای iufS و Uما همچنین می‌توانیم اندازه را تعریف کنیم.

مثال

یک آرایه با نوع داده 4 بایت عدد صحیح ایجاد کنید:

import numpy as np
arr = np.array([1, 2, 3, 4], dtype='i4')
print(arr)
print(arr.dtype)

اجرای مثال

اگر مقدار قابل تبدیل نباشد، چه خواهد شد؟

اگر نوع عنصر غیرقابل تغییر داده شود، NumPy ValueError ایجاد خواهد کرد.

ValueError: در Python، اگر پارامتری که به تابع ارسال می‌شود نوع غیرمنتظره یا نادرست باشد، ValueError ایجاد می‌شود.

مثال

خطای ValueError: در Python، اگر نوع داده پارامتری که به تابع منتقل می‌شود غیرمنتظره یا نادرست باشد، ValueError ایجاد می‌شود.

import numpy as np
arr = np.array(['a', '2', '3'], dtype='i')

اجرای مثال

تغییر نوع داده آرایه موجود

بهترین روش برای تغییر نوع داده آرایه موجود استفاده از astype() این روش آرایه را کپی می‌کند.

astype() این تابع یک کپی از آرایه ایجاد می‌کند و به شما اجازه می‌دهد نوع داده را به عنوان پارامتر مشخص کنید.

نوع داده می‌تواند با استفاده از رشته مشخص شود، به عنوان مثال 'f' مقدار عدد اعشاری را نشان می‌دهد،'i' مقدار عدد صحیح و غیره را نشان می‌دهد. یا شما می‌توانید مستقیماً از نوع داده استفاده کنید، به عنوان مثال float مقدار عدد اعشاری را نشان می‌دهد،int مقدار عدد صحیح را نشان می‌دهد.

مثال

با استفاده از 'i' به عنوان پارامتر، نوع داده از عدد اعشاری به عدد صحیح تغییر دهید:

import numpy as np
arr = np.array([1.1, 2.1, 3.1])
newarr = arr.astype('i')
print(newarr)
print(newarr.dtype)

اجرای مثال

مثال

با استفاده از int به عنوان پارامتر، نوع داده از عدد اعشاری به عدد صحیح تغییر دهید:

import numpy as np
arr = np.array([1.1, 2.1, 3.1])
newarr = arr.astype(int)
print(newarr)
print(newarr.dtype)

اجرای مثال

مثال

تغییر نوع داده از عدد صحیح به بولین:

import numpy as np
arr = np.array([1, 0, 3])
newarr = arr.astype(bool)
print(newarr)
print(newarr.dtype)

اجرای مثال