Hướng dẫn python pandas: remove everything before a delimiter in a string - pandas python: xóa mọi thứ trước dấu phân cách trong chuỗi
Bạn có thể sử dụng 6 giống như bạn sẽ sử dụng 7 bình thường. Chỉ cần phân chia trên chuỗi 8 và lập chỉ mục danh sách được tạo từ phương thức 7: Show
Đây là một giải pháp không phải của PANDAS:
Chỉnh sửa: Đây là lời giải thích từng bước về những gì đang xảy ra trong 0 ở trên:
Tôi sẽ đề nghị kiểm tra các tài liệu pandas.series.str, hoặc, tốt hơn là làm việc với dữ liệu văn bản trong gấu trúc. Khi làm việc với các bộ dữ liệu trong thế giới thực trong Python và Pandas, bạn sẽ cần xóa các ký tự khỏi chuỗi của mình *rất nhiều *. Tôi thấy ba phương pháp này có thể giải quyết rất nhiều vấn đề của bạn: .split() #splits the string into two tuples around whatever character it was given and deletes that character..lstrip() #strips everything before and including the character or set of characters you say. If left blank, deletes whitespace..rstrip() #strips everything out from the end up to and including the character or set of characters you give. If left blank, deletes whitespace at the end. Các tài liệu Python là ở đây. Hãy cùng đi qua cách chúng ta có thể sử dụng các lệnh này. Tôi sẽ sử dụng bộ dữ liệu Titanic trên Kaggle và tôi muốn lấy tên đầu tiên từ mỗi hành khách. Tên đầu tiên trong danh sách là: 'Braund, Mr. Owen Harris' Chúng tôi chỉ muốn cái tên của Ow Owen vì chúng tôi chỉ quan tâm đến tên đầu tiên. Mỗi tên nam trong danh sách hành khách đều có mô hình sau (ngoại trừ phụ nữ, chúng tôi sẽ nhận được điều đó một chút): Họ, chào. First_name last_name Dưới đây là giải pháp trong một dòng mã, sau đó, tôi sẽ chia nhỏ từng bước. name = 'Braund, Mr. Owen Harris' Điều đó trở lại: 'Owen'
Đó là rất nhiều mã! Hãy cùng bước đi qua các lệnh đó từng bước. Vì mỗi tên đều chứa một lời chào, và do đó, một khoảng thời gian, trước tên đầu tiên, chúng ta có thể thoát khỏi mọi thứ lên đến và trước khoảng thời gian. Vì vậy, trước tiên, chúng tôi chia tên thành hai chuỗi. splitting = name.split('.') Chúng tôi chỉ muốn ‘Owen Harris, phần đầu tiên đó là vô dụng. Vì vậy, tôi chỉ gọi chuỗi thứ hai trong danh sách, ở vị trí chỉ mục 1. First_Last = splitting[1] Nhưng chúng tôi không muốn không gian trống xấu xí đó ngay từ đầu. Đó là lý do tại sao chúng tôi sử dụng .lstrip (). Trong trường hợp này, chúng tôi chỉ muốn xóa không gian trống, vì vậy không cần phải vượt qua bất kỳ đối số nào. First_Last = First_Last.lstrip() Bây giờ chúng tôi muốn thoát khỏi họ. Chúng tôi làm điều đó bằng cách sử dụng .Split () một lần nữa. Lần này dễ dàng hơn vì luôn có một khoảng trống giữa tên đầu tiên và họ. Bởi vì .Split () loại bỏ nhân vật mà Lừa được thông qua, điều đó có nghĩa là chúng ta sẽ chỉ còn lại chỉ với tên đầu tiên và tên cuối cùng, không có khoảng trống. Từ đó chúng tôi chỉ muốn mục đầu tiên, ở vị trí chỉ mục 0. 0Vì vậy, một lần nữa, đặt toàn bộ mọi thứ lại với nhau thành một dòng. 1Tiền thưởng: .rstrip ()Vì vậy, điều đó giải quyết vấn đề cho những người đàn ông trong bộ dữ liệu, nhưng bây giờ hãy để Lôi nhìn vào tên nữ. Họ trông như thế này: 2Vì vậy, cái tên chúng tôi muốn ở đây là Florence, đó là tên đầu tiên của hành khách, nhưng cô ấy được liệt kê dưới tên chồng của cô ấy. Ở đây, cách chúng ta có được tên của cô ấy: 3Điều đó khiến chúng ta đến với Briggs Thayer) 4Điều đó đưa chúng ta đến ‘Florence Briggs Thayer, vì .rstrip () hoạt động như .lstrip () nhưng ở cuối từ. 5
Làm thế nào để bạn xóa mọi thứ trước một ký tự trong một chuỗi trăn?Để xóa mọi thứ trước một ký tự trong một chuỗi:.. Sử dụng str.tìm () phương thức để lấy chỉ mục của ký tự .. Sử dụng cắt chuỗi và đặt chỉ mục bắt đầu thành chỉ mục của ký tự .. Chuỗi mới sẽ không chứa các ký tự trước .. Làm thế nào để bạn loại bỏ các bộ phận không mong muốn khỏi chuỗi gấu trúc?Sử dụng phương thức map () Trong ví dụ cụ thể của chúng tôi, chúng tôi có thể sử dụng map () để áp dụng hàm lambda loại bỏ +/- từ đầu chuỗi và bất kỳ ký tự ASCII nào từ cuối chuỗi.
In our specific example, we can use map() to apply a lambda function that removes +/- from the beginning of the string and any ascii character from the end of the string.
Làm cách nào để loại bỏ dấu phân cách trong gấu trúc?Xóa dấu phân cách bằng cách sử dụng Split và Str, chúng ta có thể sử dụng STR để sử dụng các phương thức chuỗi tiêu chuẩn trên loạt gấu trúc.STR.Chức năng chia () sẽ cung cấp cho chúng tôi một danh sách các chuỗi.STR [0] sẽ cho phép chúng tôi lấy phần tử đầu tiên của danh sách.using split and str
We can use str to use standard string methods on a Pandas series. The str. split() function will give us a list of strings. The str[0] will allow us to grab the first element of the list.
Làm thế nào để bạn tước một chuỗi trong gấu trúc?lstrip () được sử dụng để loại bỏ các khoảng trống khỏi phía bên trái của chuỗi, str.rstrip () để loại bỏ các khoảng trống từ bên phải của chuỗi và str.strip () sẽ loại bỏ các khoảng trống khỏi cả hai bên. rstrip() to remove spaces from right side of the string and str. strip() removes spaces from both sides. |