Tôi nhận được một khung dữ liệu khá lớn từ một csv trong gấu trúc.Cách sửa đổi toàn bộ văn bản của một số cột trong gấu trúc
Vấn đề là trên một số cột tôi nhận được chuỗi văn bản mà tôi muốn cô lập ký tự cuối cùng để biến nó thành số nguyên.
Tôi đã tìm được giải pháp, nhưng tôi khá chắc chắn nó không hiệu quả nhất. Nó giống như sau:
import pandas as pd
df = pd.read_csv("filename")
cols = list(df.loc[:, 'col_a':'column_s'])
df_filtered = df[cols].dropna()
df_filtered['col_o'] = df_filtered['col_o'].str[-1:]
df_filtered['col_p'] = df_filtered['col_p'].str[-1:]
df_filtered['col_q'] = df_filtered['col_q'].str[-1:]
df_filtered['col_r'] = df_filtered['col_r'].str[-1:]
df_filtered['col_s'] = df_filtered['col_s'].str[-1:]
Về mặt văn bản, điều này không thực sự hiệu quả. một cái gì đó vì vậy tôi đã cố gắng như thế này:
colstofilter = list(df_filtered.loc[:, 'col_o':'col_s'])
for col in df_filtered[colstofilter]:
print(df_filtered[col].str[-1:].head())
in nó mang lại cho chính xác những gì tôi muốn, nhưng khi tôi cố gắng biến nó thành một chức năng hoặc một lamba hoặc áp dụng nó vào các dataframe, tôi nhận được một lỗi rằng đó là không được hỗ trợ
Nó hoạt động như một nét duyên dáng! Cảm ơn rất nhiều ! –