Hồi quy logistic trong Python - Tái cấu trúc dữ liệu
Bất cứ khi nào tổ chức thực hiện một cuộc khảo sát, họ cố gắng thu thập càng nhiều thông tin càng tốt từ khách hàng, với ý tưởng rằng thông tin này sẽ hữu ích cho tổ chức theo cách này hay cách khác, vào thời điểm sau này. Để giải quyết vấn đề hiện tại, chúng tôi phải thu thập thông tin có liên quan trực tiếp đến vấn đề của chúng tôi.
Hiển thị tất cả các trường
Bây giờ, chúng ta hãy xem cách chọn các trường dữ liệu hữu ích cho chúng ta. Chạy câu lệnh sau trong trình soạn thảo mã.
In [6]: print(list(df.columns))
Bạn sẽ thấy kết quả sau:
['age', 'job', 'marital', 'education', 'default', 'housing', 'loan',
'contact', 'month', 'day_of_week', 'duration', 'campaign', 'pdays',
'previous', 'poutcome', 'emp_var_rate', 'cons_price_idx', 'cons_conf_idx',
'euribor3m', 'nr_employed', 'y']
Kết quả hiển thị tên của tất cả các cột trong cơ sở dữ liệu. Cột cuối cùng “y” là một giá trị Boolean cho biết liệu khách hàng này có gửi tiền có kỳ hạn với ngân hàng hay không. Các giá trị của trường này là “y” hoặc “n”. Bạn có thể đọc mô tả và mục đích của từng cột trong tệp bank-name.txt đã được tải xuống như một phần của dữ liệu.
Loại bỏ các trường không mong muốn
Kiểm tra tên cột, bạn sẽ biết rằng một số trường không có ý nghĩa gì đối với vấn đề hiện tại. Ví dụ, các trường nhưmonth, day_of_week, chiến dịch, v.v. không có ích gì cho chúng tôi. Chúng tôi sẽ loại bỏ các trường này khỏi cơ sở dữ liệu của chúng tôi. Để thả một cột, chúng ta sử dụng lệnh drop như hình dưới đây:
In [8]: #drop columns which are not needed.
df.drop(df.columns[[0, 3, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 19]],
axis = 1, inplace = True)
Lệnh nói rằng thả số cột 0, 3, 7, 8, v.v. Để đảm bảo rằng chỉ mục được chọn đúng, hãy sử dụng câu lệnh sau:
In [7]: df.columns[9]
Out[7]: 'day_of_week'
Điều này sẽ in tên cột cho chỉ mục đã cho.
Sau khi loại bỏ các cột không bắt buộc, hãy kiểm tra dữ liệu bằng câu lệnh head. Kết quả màn hình được hiển thị ở đây -
In [9]: df.head()
Out[9]:
job marital default housing loan poutcome y
0 blue-collar married unknown yes no nonexistent 0
1 technician married no no no nonexistent 0
2 management single no yes no success 1
3 services married no no no nonexistent 0
4 retired married no yes no success 1
Giờ đây, chúng tôi chỉ có những trường mà chúng tôi cảm thấy quan trọng đối với việc phân tích và dự đoán dữ liệu của chúng tôi. Tầm quan trọng củaData Scientistđi vào hình ảnh ở bước này. Nhà khoa học dữ liệu phải chọn các cột thích hợp để xây dựng mô hình.
Ví dụ, loại jobMặc dù thoạt nhìn có thể không thuyết phục được mọi người đưa vào cơ sở dữ liệu, nhưng nó sẽ là một trường rất hữu ích. Không phải tất cả các loại khách hàng sẽ mở TD. Những người có thu nhập thấp hơn có thể không mở TDs, trong khi những người có thu nhập cao hơn thường sẽ gửi tiền thừa của họ vào TDs. Vì vậy, loại công việc trở nên phù hợp đáng kể trong kịch bản này. Tương tự như vậy, hãy chọn cẩn thận các cột mà bạn cảm thấy có liên quan cho phân tích của mình.
Trong chương tiếp theo, chúng ta sẽ chuẩn bị dữ liệu để xây dựng mô hình.