Đôi khi có yêu cầu chuyển đổi một chuỗi thành một số (int / float) trong phân tích dữ liệu. Đối với mỗi chuỗi, chúng tôi có thể chỉ định một giá trị số nguyên duy nhất để phân biệt các giá trị chuỗi.
Đối với điều này, chúng tôi sử dụng dữ liệu trong các tệp Giá trị được phân tách bằng dấu phẩy (CSV). Giả sử chúng tôi có một tệp excel chứa dữ liệu CSV như sau -
Công ty | Ngành | Đề xuất |
---|---|---|
Ngân hàng HDFC | Tài chính | Giữ |
Apollo | Chăm sóc sức khỏe | Mua |
Anh hùng | Ô tô | Hoạt động kém |
Có Ngân hàng | Tài chính | Giữ |
M&M | Ô tô | Hoạt động kém |
Fortis | Chăm sóc sức khỏe | Mua |
Maruti | Ô tô | Hoạt động kém |
Trên đây chỉ là một vài dòng từ một tập dữ liệu lớn, chúng tôi cần đưa ra các khuyến nghị khác. I.e. Các giá trị số nguyên của Mua, Giữ, Hiệu suất kém, v.v., các giá trị này sẽ liên kết với siêu dữ liệu của chúng tôi. Vì vậy, đối với đầu vào ở trên, đầu ra dự kiến của chúng ta sẽ giống như -
Công ty | Ngành | Đề xuất |
---|---|---|
Ngân hàng HDFC | Tài chính | 2 |
Apollo | Chăm sóc sức khỏe | 1 |
Anh hùng | Ô tô | 3 |
Có Ngân hàng | Tài chính | 2 |
M&M | Ô tô | 3 |
Fortis | Chăm sóc sức khỏe | 1 |
Maruti | Ô tô | 3 |
Đây là một cách để thay thế chuỗi (giá trị cột) của chúng tôi thành số nguyên.
Mã 1
#Import required library import pandas as pd #Import the CSV file into Python using read_csv() from pandas dataframe = pd.read_csv("data_pandas1.csv") #Create the dictionary of key-value pair, where key is #your old value(string) and value is your new value(integer). Recommendation = {'Buy': 1, 'Hold': 2, 'Underperform': 3} #Assign these different key-value pair from above dictiionary to your table dataframe.Recommendation = [Recommendation[item] for item in dataframe.Recommendation] #New table print(dataframe)
Kết quả
Company Industry Recommendation 0 HDFC Bank Finance 2 1 Apollo Healthcare 1 2 Hero Automobile 3 3 Yes Bank Finance 2 4 M&M Automobile 3 5 Fortis Healthcare 1 6 Maruti Automobile 3
Có một cách khác để viết mã trên, trong đó chúng tôi không xử lý từ điển thay vào đó chúng tôi chỉ định trực tiếp một giá trị khác cho trường cột (Đề xuất tại đây) nếu điều kiện khớp.
#Import required library import pandas as pd #Import the CSV file into Python using read_csv() from pandas dataf = pd.read_csv("data_pandas1.csv") #Directly assigning individual fields of Recommendation column different integer value #if condition matches .i.e.In the dataframe, recommendation columns we have "Buy" we'll assign # integer 1 to it. dataf.Recommendation[data.Recommendation =='Buy'] =1 dataf.Recommendation[data.Recommendation =='Hold'] =2 dataf.Recommendation[data.Recommendation =='Underperform'] =3 print(dataf)
Kết quả
Company Industry Recommendation 0 HDFC Bank Finance 2 1 Apollo Healthcare 1 2 Hero Automobile 3 3 Yes Bank Finance 2 4 M&M Automobile 3 5 Fortis Healthcare 1 6 Maruti Automobile 3
Ở trên, tôi đã đề cập đến một số cách duy nhất để thay thế dữ liệu chuỗi trong bảng của bạn (tệp định dạng csv) thành một giá trị số nguyên và có nhiều trường hợp xảy ra khi bạn có cùng yêu cầu thay đổi trường dữ liệu của mình từ chuỗi thành số nguyên.