Cách thay thế ngoại lệ bằng trung vị trong python

Điểm mẫu, được chỉ định dưới dạng vectơ giá trị điểm mẫu hoặc một trong các tùy chọn trong bảng sau khi dữ liệu đầu vào là bảng. Các điểm mẫu đại diện cho các vị trí trục x của dữ liệu và phải được sắp xếp và chứa các phần tử duy nhất. Các điểm mẫu không cần phải được lấy mẫu thống nhất. Vector [1 2 3 ...] là mặc định

Khi dữ liệu đầu vào là một bảng, bạn có thể chỉ định các điểm mẫu dưới dạng biến bảng bằng một trong các tùy chọn này

Tùy chọn cho Đầu vào bảngMô tảVí dụTên biến

Một vectơ ký tự hoặc chuỗi vô hướng chỉ định một tên biến bảng

'Var1'

"Var1"

chỉ số biến vô hướng

Một chỉ số biến bảng vô hướng

________số 8

véc tơ logic

Một vectơ logic có mỗi phần tử tương ứng với một biến bảng, trong đó true chỉ định biến tương ứng làm điểm mẫu và tất cả các phần tử khác là

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
sns.set_style["darkgrid"]
plt.rcParams["figure.figsize"] = [8,6]


tips_ds  = sns.load_dataset['tips']
tips_ds.head[]
0

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
sns.set_style["darkgrid"]
plt.rcParams["figure.figsize"] = [8,6]


tips_ds  = sns.load_dataset['tips']
tips_ds.head[]
1

xử lý chức năng

Một hàm xử lý lấy một biến bảng làm đầu vào và trả về một đại lượng vô hướng logic, giá trị này phải là true cho chỉ một biến bảng

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
sns.set_style["darkgrid"]
plt.rcParams["figure.figsize"] = [8,6]


tips_ds  = sns.load_dataset['tips']
tips_ds.head[]
3

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
sns.set_style["darkgrid"]
plt.rcParams["figure.figsize"] = [8,6]


tips_ds  = sns.load_dataset['tips']
tips_ds.head[]
4 chỉ số dưới

Chỉ số dưới bảng được tạo bởi hàm

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
sns.set_style["darkgrid"]
plt.rcParams["figure.figsize"] = [8,6]


tips_ds  = sns.load_dataset['tips']
tips_ds.head[]
4 trả về chỉ số dưới cho chỉ một biến

'Var1'1

Ghi chú

Đối số tên-giá trị này không được hỗ trợ khi dữ liệu đầu vào là một 'Var1'2. Thời gian biểu sử dụng vectơ thời gian hàng làm điểm mẫu. Để sử dụng các điểm mẫu khác nhau, bạn phải chỉnh sửa thời gian biểu sao cho thời gian hàng chứa các điểm mẫu mong muốn

Các cửa sổ di chuyển được xác định tương ứng với các điểm mẫu. Ví dụ: nếu 'Var1'3 là một vectơ thời gian tương ứng với dữ liệu đầu vào, thì 'Var1'4 có một cửa sổ biểu thị khoảng thời gian giữa 'Var1'5 và 'Var1'6

Khi vectơ điểm mẫu có kiểu dữ liệu 'Var1'7 hoặc 'Var1'8, chiều dài cửa sổ di chuyển phải có kiểu 'Var1'8

Giá trị ngoại lệ là các giá trị dữ liệu khác xa so với phần còn lại của các quan sát trong tập dữ liệu của bạn. Tùy thuộc vào ngữ cảnh, đôi khi bạn có thể nghe thấy các ngoại lệ được gọi là dị thường

Ví dụ: nếu độ tuổi của hầu hết sinh viên đi học đại học trong tập dữ liệu là từ 18 đến 25, thì quan sát 60 đối với độ tuổi của sinh viên sẽ được coi là ngoại lệ

Ngoại lệ trong một số trường hợp có thể hữu ích để phát hiện các hoạt động bất thường. Chẳng hạn, nếu một người truy cập vào tài khoản ngân hàng trực tuyến của cô ấy từ một vị trí cụ thể trong 95% thời gian và sau đó đột nhiên tài khoản ngân hàng của cô ấy được truy cập từ một vị trí địa lý cách xa lần đăng nhập trước đó của cô ấy, thông tin đăng nhập mới sẽ được coi là ngoại lệ và có thể bị

Tuy nhiên, các giá trị ngoại lệ cũng có thể xảy ra trong tập dữ liệu của bạn do lỗi của con người khi nhập dữ liệu hoặc thậm chí do lỗi của thiết bị ghi dữ liệu. Trong những trường hợp như vậy, các ngoại lệ có thể làm sai lệch việc phân phối dữ liệu và truyền tải thông tin sai lệch. Nếu không được xử lý, điều này có thể ảnh hưởng đến hiệu suất của các thuật toán thống kê như mô hình máy học

Trong bài viết này, chúng tôi sẽ chỉ cho bạn các kỹ thuật khác nhau để loại bỏ các giá trị ngoại lệ khỏi tập dữ liệu của bạn và chúng tôi sẽ cung cấp cho bạn các ví dụ minh họa chính xác cách triển khai chúng bằng Python

Nhập tập dữ liệu

Tập lệnh sau đây nhập các thư viện cần thiết để thực thi tập lệnh trong bài viết này, cùng với tập dữ liệu. Bộ dữ liệu được tích hợp sẵn với thư viện Seaborn, được lưu trữ trong khung dữ liệu Pandas bằng phương pháp

lower limit = Quartile One [q1] -  IQR x 1.5
8 trong tập lệnh bên dưới

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
sns.set_style["darkgrid"]
plt.rcParams["figure.figsize"] = [8,6]


tips_ds  = sns.load_dataset['tips']
tips_ds.head[]

Đầu ra bên dưới hiển thị tiêu đề [năm hàng đầu tiên] của tập dữ liệu của chúng tôi. Bộ dữ liệu của chúng tôi chứa thông tin về các hóa đơn được thanh toán tại một nhà hàng hư cấu. Tập dữ liệu chứa các giá trị cho tổng số tiền của hóa đơn, tiền boa, ngày và giờ của hóa đơn cũng như giới tính của người đã thanh toán hóa đơn

đầu ra

Một trong những cách nhanh nhất để xem các ngoại lệ trong tập dữ liệu của bạn là thông qua biểu đồ hộp. Tập lệnh sau tạo một biểu đồ hộp cho cột "mẹo" trong tập dữ liệu của chúng tôi

sns.boxplot[ y='tip', data=tips_ds]

đầu ra

Đường viền dưới của hộp màu xanh lam trong hình trên hiển thị phần tư thứ nhất - 25% giá trị mẹo trong tập dữ liệu của chúng tôi nằm dưới phạm vi này. Dòng ở giữa hộp màu xanh hiển thị phần tư thứ 2 hoặc trung bình. 50% giá trị mẹo xảy ra dưới phạm vi này. Đường viền trên của hộp màu xanh lam trong hình bên dưới hiển thị phần tư thứ ba. 75% giá trị mẹo trong tập dữ liệu của chúng tôi xảy ra dưới phạm vi này

Sự khác biệt giữa phần tư thứ 3 và thứ 1 được gọi là khoảng tứ phân vị [IQR]

Đường nằm ngang ở dưới cùng của biểu đồ hộp được gọi là giới hạn dưới và được tính ở đây là

lower limit = Quartile One [q1] -  IQR x 1.5

Đường ngang ở trên cùng được gọi là giới hạn trên và được tính như

upper limit = Quartile three [q3] +  IQR x 1.5

Các điểm dưới hoặc trên giới hạn dưới và trên có thể được coi là ngoại lệ. Trong hình bên dưới, bạn có thể thấy một số chấm đen phía trên giới hạn trên. Chúng tôi sẽ coi đây là những giá trị ngoại lệ

Vậy làm cách nào để bạn xóa các giá trị này khỏi tập dữ liệu của mình?

Nhận miễn phí Bộ công cụ dành cho nhà phát triển Python của chúng tôi

Tôi đã tập hợp Bộ công cụ dành cho nhà phát triển Python với hơn 100 tập lệnh Python dựng sẵn bao gồm cấu trúc dữ liệu, Pandas, NumPy, Seaborn, máy học, xử lý tệp, quét web và nhiều thứ khác - và tôi muốn bạn có bộ công cụ này miễn phí. Nhập địa chỉ email của bạn dưới đây và tôi sẽ gửi một bản sao theo cách của bạn

Tôi có nên thay thế các giá trị ngoại lệ bằng giá trị trung bình hoặc trung bình không?

Vì giá trị trung bình bị ảnh hưởng nhiều bởi giá trị ngoại lệ, nên bạn nên thay thế giá trị ngoại lệ bằng giá trị trung bình .

Tôi có nên thay thế các ngoại lệ?

Nếu ngoại lệ trong câu hỏi là. Lỗi đo lường hoặc lỗi nhập dữ liệu, hãy sửa lỗi nếu có thể . Nếu không sửa được, hãy loại bỏ nhận xét đó vì bạn biết nó không chính xác. Không phải là một phần của dân số bạn đang nghiên cứu [tôi. e. , thuộc tính hoặc điều kiện bất thường], bạn có thể loại bỏ ngoại lệ một cách hợp pháp.

Chủ Đề