Cara menggunakan NP.ASTYPE pada Python

Secara default, Python memiliki tipe data berikut ini:

Table of Contents

  • Tipe Data di NumPy
  • Memeriksa Tipe Data Array
  • Membuat Array Dengan Tipe Data Yang Ditentukan
  • Bagaimana Jika Suatu Nilai Tidak Dapat Dikonversi?
  • Mengonversi Tipe Data pada Array yang Ada
  • 1. Sintaks DataFrame.astype[]
  • 2. DataFrame.astype[] – Cast Semua Kolom Tipe Data [dtype]
  • 3. Ubah Jenis Kolom Tertentu
  • 4. astype[] – Keluarkan Beberapa Kolom Menggunakan Dict
  • 5. astype[] dengan menaikkan atau mengabaikan Kesalahan
  • Astype untuk apa?
  • Apa itu Pandas pada python?
  • Apa itu data Formatting?

  • string – digunakan untuk mewakili data teks, teks diberikan di antara tanda kutip. misalnya. “ABCD”
  • integer – digunakan untuk merepresentasikan bilangan integer. misalnya. -1, -2, -3
  • float – digunakan untuk mewakili bilangan real. misalnya. 1.2, 42.42
  • boolean – digunakan untuk mewakili True atau False.
  • complex – digunakan untuk merepresentasikan bilangan dalam dataran kompleks. misalnya. 1.0 + 2.0j, 1.5 + 2.5j

Section Artikel

  • 1 Tipe Data di NumPy
  • 2 Memeriksa Tipe Data Array
  • 3 Membuat Array Dengan Tipe Data Yang Ditentukan
  • 4 Bagaimana Jika Suatu Nilai Tidak Dapat Dikonversi?
  • 5 Mengonversi Tipe Data pada Array yang Ada

Tipe Data di NumPy

NumPy memiliki beberapa tipe data tambahan, dan mengacu pada tipe data dengan satu karakter, seperti i untuk integer, u untuk unsigned integer dll.

Di bawah ini adalah daftar semua tipe data di NumPy dan karakter yang digunakan untuk mewakilinya.

  • i – integer
  • b – boolean
  • u – unsigned integer
  • f – float
  • c – complex float
  • m – timedelta
  • M – datetime
  • O – objek
  • S – string
  • U – string unicode
  • V – potongan memori tetap untuk tipe lain [void]

Memeriksa Tipe Data Array

Objek array NumPy memiliki properti yang disebut dtype yang mengembalikan tipe data dari array.

Contoh:
Dapatkan tipe data dari objek array

import numpy as np

arr = np.array[[1, 2, 3, 4]]

print[arr.dtype]

Contoh
Dapatkan tipe data dari array yang berisi string

import numpy as np

arr = np.array[['apple', 'banana', 'cherry']]

print[arr.dtype]

Membuat Array Dengan Tipe Data Yang Ditentukan

Kita menggunakan fungsi array[] untuk membuat array, fungsi ini dapat mengambil argumen opsional: dtype yang memungkinkan untuk menentukan tipe data yang diharapkan dari elemen array.

Contoh:
Buat array dengan tipe data string

import numpy as np

arr = np.array[[1, 2, 3, 4], dtype='S']

print[arr]
print[arr.dtype]

Untuk i, u, f, S dan U kita juga bisa mendefinisikan ukuran.

Contoh:
Buat array dengan tipe data 4 byte integer

import numpy as np

arr = np.array[[1, 2, 3, 4], dtype='i4']

print[arr]
print[arr.dtype]

Bagaimana Jika Suatu Nilai Tidak Dapat Dikonversi?

Jika sebuah tipe diberikan di mana elemen tidak dapat dikonversi maka NumPy akan memunculkan ValueError.

ValueError: Dalam Python ValueError dimunculkan ketika jenis argumen yang diteruskan ke suatu fungsi tidak diharapkan / salah.

Contoh:
String non integer seperti ‘a’ tidak dapat diubah menjadi integer [akan menimbulkan error]

import numpy as np

arr = np.array[['a', '2', '3'], dtype='i']

Mengonversi Tipe Data pada Array yang Ada

Cara terbaik untuk mengubah tipe data dari array yang ada, adalah membuat salinan dari array dengan metode astype[].

Fungsi astype[] berfungsi untuk membuat salinan array, dan memungkinkan kita untuk menentukan tipe data sebagai parameter.

Tipe data dapat ditentukan menggunakan string, seperti ‘f’ untuk float, ‘i’ untuk integer, dll. Atau Anda dapat menggunakan tipe data secara langsung seperti float untuk float dan int untuk integer.

Contoh:
Ubah tipe data dari float menjadi integer dengan menggunakan ‘i’ sebagai nilai parameter

import numpy as np

arr = np.array[[1.1, 2.1, 3.1]]

newarr = arr.astype['i']

print[newarr]
print[newarr.dtype]

Contoh
Ubah tipe data dari float menjadi integer dengan menggunakan int sebagai nilai parameter

import numpy as np

arr = np.array[[1.1, 2.1, 3.1]]

newarr = arr.astype[int]

print[newarr]
print[newarr.dtype]

Contoh
Ubah tipe data dari integer menjadi boolean

import numpy as np

arr = np.array[[1, 0, 3]]

newarr = arr.astype[bool]

print[newarr]
print[newarr.dtype]

Fungsi DataFrame.astype[] digunakan untuk mentransmisikan tipe data kolom [dtype] di objek pandas, mendukung String, flat, date, int, datetime banyak tipe d lain yang didukung oleh Numpy. Ini berguna ketika Anda ingin mentransmisikan kolom DataFrame dari satu tipe data ke tipe data lainnya.

panda astype[] Poin Kunci –

  1. Ini digunakan untuk mentransmisikan tipe data [dtype].
  2. Mendukung mengubah beberapa tipe data menggunakan Dict.
  3. Mendukung semua tipe data yang disertakan dengan Numpy.
  • 1. Sintaks DataFrame.astype[]
  • 2. DataFrame.astype[] – Cast Semua Kolom Tipe Data [dtype]
  • 3. Ubah Jenis Kolom Tertentu
  • 4. astype[] – Keluarkan Beberapa Kolom Menggunakan Dict
  • 5. astype[] dengan menaikkan atau mengabaikan Kesalahan
    • Kesimpulan
    • Referensi

1. Sintaks DataFrame.astype[]

Berikut ini adalah sintaks dari DataFrame.astype[]. Fungsi ini membutuhkan dtype, copydan errors param.


# astype[] Syntax
DataFrame.astype[dtype, copy=True, errors="raise"]

Berikut ini adalah parameter dari astype[].

  • dtype – Menerima tipe numpy.dtype atau Python untuk mentransmisikan seluruh objek panda ke tipe yang sama. Gunakan {col: dtype, …}, di mana col adalah label kolom dan dtype adalah numpy.dtype atau tipe Python untuk mentransmisikan satu atau lebih kolom DataFrame.
  • copy -Default Benar. Kembalikan salinan ketika copy=True [berhati-hatilah dalam pengaturan copy=False sebagai perubahan nilai maka dapat menyebar ke objek panda lainnya].
  • errors – Kenaikan bawaan.
    • Gunakan ‘naikkan’ untuk menghasilkan pengecualian saat tidak dapat mentransmisikan karena tipe data yang tidak valid.
    • Gunakan ‘abaikan’ untuk tidak memunculkan pengecualian [menekan kesalahan/pengecualian]. Pada kesalahan kembalikan objek asli.

2. DataFrame.astype[] – Cast Semua Kolom Tipe Data [dtype]

Secara default panda astype[] mencoba untuk melemparkan semua kolom DataFrame ke yang ditentukan numpy.dtype atau jenis Python [int, string, float, date, datetime] . Jika salah satu kolom tidak dapat dilemparkan karena data atau nan yang tidak valid, itu menimbulkan kesalahan ‘ValueError: literal tidak valid’ dan gagal operasi.

Contoh di bawah ini menunjukkan casting semua tipe data kolom.


import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
    'Fee' :["20000","25000","26000"],
    'Discount':["1000","2300","1500"]
              }
df = pd.DataFrame[technologies]
print[df.dtypes]

# Outputs
Fee         object
Discount    object
dtype: object

DataFrame.dtypes mengembalikan nama Kolom dan tipe d untuk semua kolom DataFrame. Perhatikan bahwa DataFrame di atas memiliki tipe objek untuk semua kolom.

Sekarang mari kita berikan tipe data ke Integer bertanda 64-bitKamu dapat memakai numpy.int64,numpy.int_, int64 atau int sebagai param. Untuk mentransmisikan ke bilangan bulat bertanda 32-bitmenggunakan numpy.int32, int32.


# Cast all columns to int
df = df.astype[np.int64]
df = df.astype['int64']
df = df.astype['int']

print[df.dtypes] 

# All gives the same output.
Fee         int64
Discount    int64
dtype: object

Perhatikan bahwa itu memperbarui semua kolom dengan dtype baru.

Mari kita melemparkannya ke String, menggunakan numpy.str_ atau string.


# Cast all columns to string
df = df.astype['string']
print[df.dtypes]

# Outputs
Fee         string
Discount    string
dtype: object

Mari kita melemparkannya ke tipe float menggunakan numpy.float64, numpy.float_, float


# Cast all columns to float
df = df.astype['float']
print[df.dtypes]

# Outputs
Fee         float
Discount    flat
dtype: object

3. Ubah Jenis Kolom Tertentu

Anda juga dapat mengubah jenis kolom tertentu dengan menggunakan Series.astype[]karena setiap kolom pada DataFrame adalah Seri panda, saya akan mendapatkan kolom dari DataFrame sebagai Seri dan menggunakan astype[]. Dalam contoh di bawah ini df.Fee atau df[‘Fee’] mengembalikan objek Seri.


# Cast specific column type
df.Fee = df.Fee.astype['int']
[or]
df.Fee = df['Fee'].astype['int']
print[df.dtypes]

# Outputs
Fee          int64
Discount    object
dtype: object

4. astype[] – Keluarkan Beberapa Kolom Menggunakan Dict

dtype param dari astype[] juga mendukung Kamus dalam format {col: dtype, …} di mana col adalah label kolom dan dtype adalah a numpy.dtype atau tipe Python [int, string, float, date, datetime] untuk mentransmisikan satu atau beberapa kolom DataFrame.


import pandas as pd
import numpy as np
# Create DataFrame from Dictionary
technologies = {
    'Courses':["Spark","PySpark","Hadoop"],
    'Fee' :["20000","25000","26000"],
    'Duration':['30day','40days','35days'],
    'Discount':["1000","2300","1500"]
              }

df = pd.DataFrame[technologies]
print[df.dtypes]

# Outputs
Courses     object
Fee         object
Duration    object
Discount    object
dtype: object

Sekarang, dengan menggunakan panda DataFrame.astype[]melemparkan Courses ke string, Fee ke int dan Discount ke float.


df2 = df.astype[{'Courses':'string','Fee':'int','Discount':'float'}]
print[df2.dtypes]

# Outputs
Courses      string
Fee           int64
Duration     object
Discount    float64
dtype: object

5. astype[] dengan menaikkan atau mengabaikan Kesalahan

Akhirnya, mari kita lihat bagaimana Anda dapat meningkatkan atau mengabaikan kesalahan saat casting, untuk melakukannya Anda harus menggunakan errors parameter Secara default, ini menggunakan raise sebagai nilai yang berarti menghasilkan pengecualian ketika tidak dapat dilemparkan karena data yang tidak valid untuk tipe.

Dari DataFrame kami Courses memiliki string data, mari kirimkan ini ke int dan lihat apa yang terjadi.


# Raise error when unable to cast
df.Courses = df.Courses.astype['int']

# Outputs
ValueError: invalid literal for int[] with base 10: 'Spark'

Seperti yang Anda lihat, itu meningkatkan kesalahan saat tidak dapat melakukan casting. Sekarang mari kita tekan pengecualian menggunakan nilai abaikan pada param kesalahan. Dengan ini, ketika kesalahan terjadi, ia mengabaikan kesalahan dan mengembalikan objek yang sama tanpa memperbarui.


# Ignore error when unable to cast
df.Courses = df.Courses.astype['int', errors="ignore"]
print[df.dtypes]

# Outputs
Courses      string
Fee           int64
Duration     object
Discount    float64
dtype: object

Kesimpulan

Pada artikel ini, saya telah menjelaskan sintaks pandas DataFrame.astype[], contoh casting seluruh DataFrame, kolom tertentu, beberapa kolom ke numpy.dtype atau tipe Python [int, string, float, date, datetime].

Referensi

Astype untuk apa?

astype[] digunakan untuk mengubah tipe data dari sebuah kolom di dataframe. Misalnya disini kita mengubah tipe data kolom 'Jumlah Mahasiswa' dari yang tadinya 'float' menjadi 'int'.

Apa itu Pandas pada python?

Pandas adalah paket Python open source yang paling sering dipakai untuk menganalisis data serta membangun sebuah machine learning. Pandas dibuat berdasarkan satu package lain bernama Numpy, yang mendukung arrays multi dimensi.

Apa itu data Formatting?

Data formatting adalah salah satu proses yang cukup penting dalam menganalisis data. Data formatting merupakan proses membentuk data menjadi bentuk standar ekspresi yang umum agar lebih mudah dipahami.

Bài mới nhất

Chủ Đề