Hướng dẫn normalize data 0 to 1 python - chuẩn hóa dữ liệu 0 thành 1 python

Trong hướng dẫn này, chúng tôi sẽ tìm hiểu về cách bình thường hóa dữ liệu trong Python. Trong khi bình thường hóa chúng tôi thay đổi thang đo của dữ liệu. Dữ liệu thường được định dạng lại để rơi vào khoảng 0-1.

Tại sao chúng ta cần bình thường hóa dữ liệu trong Python?

Các thuật toán học máy có xu hướng thực hiện tốt hơn hoặc hội tụ nhanh hơn khi các tính năng khác nhau (biến) ở quy mô nhỏ hơn. Do đó, thông thường là bình thường hóa dữ liệu trước khi đào tạo các mô hình học máy trên đó.

Chuẩn hóa cũng làm cho quá trình đào tạo ít nhạy cảm hơn với quy mô của các tính năng. Điều này dẫn đến việc có được hệ số tốt hơn sau khi đào tạo.

Quá trình làm cho các tính năng phù hợp hơn để đào tạo bằng cách tái định cư được gọi là tỷ lệ tính năng.feature scaling.

Công thức chuẩn hóa được đưa ra dưới đây:

Hướng dẫn normalize data 0 to 1 python - chuẩn hóa dữ liệu 0 thành 1 python
Bình thường hóa

Chúng tôi trừ đi giá trị tối thiểu từ mỗi mục và sau đó chia kết quả cho phạm vi. Trong đó phạm vi là sự khác biệt giữa giá trị tối đa và giá trị tối thiểu.

Các bước để bình thường hóa dữ liệu trong Python

Chúng tôi sẽ thảo luận về hai cách khác nhau để bình thường hóa dữ liệu trong Python.

Cái đầu tiên là bằng cách sử dụng phương thức ‘bình thường hóa () theo Sklearn.sklearn.

Sử dụng bình thường hóa () từ sklearn

Hãy bắt đầu bằng cách nhập xử lý từ Sklearn.

from sklearn import preprocessing

Bây giờ, hãy để tạo ra một mảng bằng cách sử dụng Numpy.

import numpy as np
x_array = np.array([2,3,5,6,7,4,8,7,6])

Bây giờ chúng ta có thể sử dụng phương thức Normalize () trên mảng. Phương pháp này bình thường hóa dữ liệu dọc theo một hàng. Hãy cùng xem phương pháp hoạt động.

normalized_arr = preprocessing.normalize([x_array])
print(normalized_arr)

Hoàn thành mã

Tại đây, mã hoàn chỉnh từ phần này:

from sklearn import preprocessing
import numpy as np
x_array = np.array([2,3,5,6,7,4,8,7,6])
normalized_arr = preprocessing.normalize([x_array])
print(normalized_arr)

Đầu ra:

[0.11785113, 0.1767767 , 0.29462783, 0.35355339, 0.41247896,
        0.23570226, 0.47140452, 0.41247896, 0.35355339]

Chúng ta có thể thấy rằng tất cả các giá trị bây giờ nằm ​​giữa phạm vi 0 đến 1. Đây là cách phương thức bình thường hóa () theo sklearn hoạt động.

Bạn cũng có thể bình thường hóa các cột trong bộ dữ liệu bằng phương pháp này. Hãy cùng xem cách làm điều đó tiếp theo.

Bình thường hóa các cột trong bộ dữ liệu bằng cách sử dụng bình thường ()

Vì bình thường hóa () chỉ bình thường hóa các giá trị dọc theo các hàng, chúng ta cần chuyển đổi cột thành một mảng trước khi chúng ta áp dụng phương thức.

Để chứng minh chúng tôi sẽ sử dụng bộ dữ liệu nhà ở & nbsp; California.

Hãy bắt đầu bằng cách nhập bộ dữ liệu.

import pandas as pd
housing = pd.read_csv("/content/sample_data/california_housing_train.csv")

Tiếp theo, chúng ta cần chọn một cột và chuyển đổi nó thành một mảng. Chúng tôi sẽ sử dụng cột 'Total_bedroom.

from sklearn import preprocessing
x_array = np.array(housing['total_bedrooms'])
normalized_arr = preprocessing.normalize([x_array])
print(normalized_arr)

Đầu ra:

[[0.01437454 0.02129852 0.00194947 ... 0.00594924 0.00618453 0.00336115]]

Chúng ta có thể thấy rằng tất cả các giá trị bây giờ nằm ​​giữa phạm vi 0 đến 1. Đây là cách phương thức bình thường hóa () theo sklearn hoạt động.

Bạn cũng có thể bình thường hóa các cột trong bộ dữ liệu bằng phương pháp này. Hãy cùng xem cách làm điều đó tiếp theo.

from sklearn import preprocessing
import pandas as pd
housing = pd.read_csv("/content/sample_data/california_housing_train.csv")
d = preprocessing.normalize(housing)
scaled_df = pd.DataFrame(d, columns=names)
scaled_df.head()

Đầu ra:

Hướng dẫn normalize data 0 to 1 python - chuẩn hóa dữ liệu 0 thành 1 python
Chúng ta có thể thấy rằng tất cả các giá trị bây giờ nằm ​​giữa phạm vi 0 đến 1. Đây là cách phương thức bình thường hóa () theo sklearn hoạt động.

Bạn cũng có thể bình thường hóa các cột trong bộ dữ liệu bằng phương pháp này. Hãy cùng xem cách làm điều đó tiếp theo.

Bình thường hóa các cột trong bộ dữ liệu bằng cách sử dụng bình thường ()

Vì bình thường hóa () chỉ bình thường hóa các giá trị dọc theo các hàng, chúng ta cần chuyển đổi cột thành một mảng trước khi chúng ta áp dụng phương thức.

from sklearn import preprocessing
import pandas as pd
housing = pd.read_csv("/content/sample_data/california_housing_train.csv")
d = preprocessing.normalize(housing, axis=0)
scaled_df = pd.DataFrame(d, columns=names)
scaled_df.head()

Đầu ra:

Hướng dẫn normalize data 0 to 1 python - chuẩn hóa dữ liệu 0 thành 1 python

Chúng ta có thể thấy rằng tất cả các giá trị bây giờ nằm ​​giữa phạm vi 0 đến 1. Đây là cách phương thức bình thường hóa () theo sklearn hoạt động.

Bạn cũng có thể bình thường hóa các cột trong bộ dữ liệu bằng phương pháp này. Hãy cùng xem cách làm điều đó tiếp theo.

Bình thường hóa các cột trong bộ dữ liệu bằng cách sử dụng bình thường ()

Vì bình thường hóa () chỉ bình thường hóa các giá trị dọc theo các hàng, chúng ta cần chuyển đổi cột thành một mảng trước khi chúng ta áp dụng phương thức.

Để chứng minh chúng tôi sẽ sử dụng bộ dữ liệu nhà ở & nbsp; California.

import numpy as np
x_array = np.array([2,3,5,6,7,4,8,7,6])
0

Đầu ra:

Hướng dẫn normalize data 0 to 1 python - chuẩn hóa dữ liệu 0 thành 1 python
Chúng ta có thể thấy rằng tất cả các giá trị bây giờ nằm ​​giữa phạm vi 0 đến 1. Đây là cách phương thức bình thường hóa () theo sklearn hoạt động.

Bạn cũng có thể bình thường hóa các cột trong bộ dữ liệu bằng phương pháp này. Hãy cùng xem cách làm điều đó tiếp theo.(0 and 1).

Bình thường hóa các cột trong bộ dữ liệu bằng cách sử dụng bình thường ()

import numpy as np
x_array = np.array([2,3,5,6,7,4,8,7,6])
1

Đầu ra:

Hướng dẫn normalize data 0 to 1 python - chuẩn hóa dữ liệu 0 thành 1 python
Chúng ta có thể thấy rằng tất cả các giá trị bây giờ nằm ​​giữa phạm vi 0 đến 1. Đây là cách phương thức bình thường hóa () theo sklearn hoạt động.

Bạn cũng có thể bình thường hóa các cột trong bộ dữ liệu bằng phương pháp này. Hãy cùng xem cách làm điều đó tiếp theo.

Bình thường hóa các cột trong bộ dữ liệu bằng cách sử dụng bình thường ()

Vì bình thường hóa () chỉ bình thường hóa các giá trị dọc theo các hàng, chúng ta cần chuyển đổi cột thành một mảng trước khi chúng ta áp dụng phương thức.

Làm cách nào để bình thường hóa dữ liệu từ 0 đến 1 trong Python?

Trong Python, mô -đun Sklearn cung cấp một đối tượng gọi là MinMaxScaler bình thường hóa dữ liệu đã cho bằng các giá trị tối thiểu và tối đa. Ở đây Phương thức FIT_TRANFORM tỷ lệ dữ liệu từ 0 đến 1 bằng đối tượng MinMaxScaler.fit_tranform method scales the data between 0 and 1 using the MinMaxScaler object.

Làm thế nào để bạn bình thường hóa dữ liệu từ 0 đến 1?

Cách bình thường hóa dữ liệu từ 0 đến 1..
Để bình thường hóa các giá trị trong bộ dữ liệu là từ 0 đến 1, bạn có thể sử dụng công thức sau:.
zi = (xi - min (x)) / (max (x) - min (x)).
where:.
Ví dụ: giả sử chúng ta có bộ dữ liệu sau:.
Giá trị tối thiểu trong bộ dữ liệu là 13 và giá trị tối đa là 71 ..

Làm thế nào để bạn bình thường hóa dữ liệu trong Python?

Sử dụng MinMaxScaler () để bình thường hóa dữ liệu trong Python Đây là một lựa chọn phổ biến hơn để bình thường hóa các bộ dữ liệu.Bạn có thể thấy rằng các giá trị trong đầu ra nằm giữa (0 và 1).MinMaxScaler cũng cung cấp cho bạn tùy chọn để chọn phạm vi tính năng.Theo mặc định, phạm vi được đặt thành (0,1). to Normalize Data in Python This is a more popular choice for normalizing datasets. You can see that the values in the output are between (0 and 1). MinMaxScaler also gives you the option to select feature range. By default, the range is set to (0,1).

Tại sao chúng ta bình thường hóa dữ liệu từ 0 đến 1?

Tiêu chuẩn hóa: Tiêu chuẩn hóa các tính năng xung quanh trung tâm và 0 với độ lệch chuẩn là 1 rất quan trọng khi chúng tôi so sánh các phép đo có các đơn vị khác nhau.Các biến được đo ở các thang đo khác nhau không đóng góp như nhau vào phân tích và cuối cùng có thể tạo ra một BAIs.when we compare measurements that have different units. Variables that are measured at different scales do not contribute equally to the analysis and might end up creating a bais.