Các phương thức chuỗi Python cực kỳ nhanh và có thể được sử dụng trong danh sách hiểu để sửa tên cột: # replace white spaces by underscores
df.columns = [c.replace(' ', '_') for c in df]
# strip leading white spaces
df.columns = [c.lstrip() for c in df]
# strip trailing white spaces
df.columns = [c.rstrip() for c in df]
# replace leading white spaces by underscores
df.columns = ['_' + c.lstrip() for c in df]
hoặc map Phương pháp dải: # strip leading white spaces
df.columns = list(map(str.lstrip, df))
Vì các phương thức chuỗi vector hóa của Pandas (pandas.Index.str và pandas.Series.str ) không được tối ưu hóa, nên sử dụng các phương thức chuỗi python trong khả năng hiểu thường nhanh hơn, đặc biệt nếu bạn cần chuỗi chúng. Ví dụ: đối với tên cột 100K, nếu bạn cần chuỗi 3 phương thức với nhau, các phương thức chuỗi Python nhanh hơn 2-5 lần so với các phương thức PANDAS tương đương. n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
Chúng tôi có thể có dữ liệu mà không có thông tin, nhưng chúng tôi không thể có thông tin mà không có dữ liệu. & nbsp; Trích dẫn này đẹp làm sao. Dữ liệu là xương sống của nhà khoa học dữ liệu và theo một nhà khoa học dữ liệu khảo sát dành khoảng 60% thời gian để làm sạch và tổ chức dữ liệu, do đó, trách nhiệm của chúng tôi là làm quen với các kỹ thuật khác nhau để tổ chức dữ liệu theo cách tốt hơn. Trong bài viết này, chúng tôi sẽ tìm hiểu về các phương pháp khác nhau để loại bỏ khoảng trắng dải thêm khỏi toàn bộ khung dữ liệu. Bộ dữ liệu được sử dụng ở đây được đưa ra dưới đây: Trong hình trên, chúng tôi đang quan sát rằng bên trong tên, tuổi, nhóm máu và các cột giới tính, dữ liệu theo cách bất thường. Trong hầu hết các ô của một cột cụ thể, thêm khoảng trắng có mặt trong phần hàng đầu của các giá trị. Vì vậy, mục đích của chúng tôi là loại bỏ tất cả các khoảng trắng thêm và sắp xếp nó một cách có hệ thống. Chúng tôi sẽ sử dụng các phương pháp khác nhau sẽ giúp chúng tôi loại bỏ tất cả không gian thêm khỏi ô. Các phương pháp khác nhau là: & nbsp; Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters Các phương pháp khác nhau để loại bỏ thêm khoảng trắngPhương pháp 1: Sử dụng hàm Dải (): & nbsp; Pandas cung cấp phương thức xác định trước pandas.series.str.strip () để loại bỏ khoảng trắng khỏi chuỗi. Sử dụng chức năng dải, chúng ta có thể dễ dàng loại bỏ thêm khoảng trắng khỏi khoảng trắng dẫn đầu và theo dõi khỏi nhìn chằm chằm. Nó trả về một loạt hoặc chỉ mục của một đối tượng. Nó lấy tập hợp các ký tự mà chúng ta muốn loại bỏ khỏi đầu và đuôi của chuỗi (nhân vật dẫn đầu và dấu vết). Theo mặc định, không có và nếu chúng ta không vượt qua bất kỳ ký tự nào thì nó sẽ loại bỏ khoảng trắng dẫn đầu và theo dõi khỏi chuỗi. Nó trả về một loạt hoặc chỉ mục của một đối tượng.“pandas.Series.str.strip()” to remove the whitespace from the string. Using strip function we can easily remove extra whitespace from leading and trailing whitespace from staring. It returns a series or index of an object. It takes set of
characters that we want to remove from head and tail of string(leading and trailing character’s). By default, it is none and if we do not pass any characters then it will remove leading and trailing whitespace from the string. It returns a series or index of an object. Cú pháp: pandas.series.str.strip (to_strip = none)pandas.Series.str.strip(to_strip = None) Giải thích: Phải mất tập hợp các ký tự mà chúng tôi muốn loại bỏ khỏi đầu và đuôi của chuỗi (nhân vật dẫn đầu và dấu vết).It takes set of characters that we want to remove from head and tail of string(leading and trailing
character’s). Tham số: Theo mặc định, đó là không và nếu chúng ta không vượt qua bất kỳ ký tự nào thì nó sẽ loại bỏ khoảng trắng dẫn đầu và theo dõi khỏi chuỗi. Nó trả về loạt hoặc chỉ mục của đối tượng. & Nbsp; By default it is none and if we do not pass any characters then it will remove leading and trailing whitespace from the string. It returns series or index of object.
Ví dụ: & nbsp; Python3import pandas as pd
____10 # strip leading white spaces
df.columns = list(map(str.lstrip, df))
1 # strip leading white spaces
df.columns = list(map(str.lstrip, df))
2# strip leading white spaces
df.columns = list(map(str.lstrip, df))
3 # strip leading white spaces
df.columns = list(map(str.lstrip, df))
4# strip leading white spaces
df.columns = list(map(str.lstrip, df))
5# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6# strip leading white spaces
df.columns = list(map(str.lstrip, df))
7# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6# strip leading white spaces
df.columns = list(map(str.lstrip, df))
9# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6__n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
7n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
8 # strip leading white spaces
df.columns = list(map(str.lstrip, df))
4Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 0# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 2# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 0__16Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 6# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 8# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6Syntax : pandas.Series.str.replace(' ', '') 0n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
6n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
7Syntax : pandas.Series.str.replace(' ', '') 3 # strip leading white spaces
df.columns = list(map(str.lstrip, df))
4Syntax : pandas.Series.str.replace(' ', '') 5# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6Syntax : pandas.Series.str.replace(' ', '') 7# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6Syntax : pandas.Series.str.replace(' ', '') 9# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6__516map 7map 8
# strip leading white spaces
df.columns = list(map(str.lstrip, df))
4pandas.Index.str 0# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6pandas.Index.str 0# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6__644416pandas.Series.str 2pandas.Series.str 3
pandas.Series.str 4
# strip leading white spaces
df.columns = list(map(str.lstrip, df))
3pandas.Series.str 6pandas.Series.str 7pandas.Series.str 8pandas.Series.str 4
Syntax : pandas.Series.str.replace(' ', '') 3pandas.Series.str 6pandas.Series.str 7pandas.Series.str 8‘ import 9pandas as pd 0
Output: Output: Phương pháp 2: Sử dụng Skipinitialspace: & nbsp; & nbsp; Nó không phải là bất kỳ phương thức nào nhưng nó là một trong những tham số có bên trong phương thức read_csv () có trong gấu trúc. Bên trong pandas.read_csv () Phương thức SkipinitialSpace tham số có mặt bằng cách sử dụng mà chúng ta có thể bỏ qua không gian ban đầu có mặt trong toàn bộ khung dữ liệu của chúng ta. Theo mặc định, nó là sai, làm cho nó đúng để xóa thêm không gian. & Nbsp;pandas.read_csv() method skipinitialspace parameter is present using which we can skip initial space
present in our whole dataframe. By default, it is False, make it True to remove extra space. Cú pháp: pandas.read_csv (‘path_of_csv_file, Skipinitialspace = true)pandas.read_csv(‘path_of_csv_file’, skipinitialspace = True) & nbsp;# Theo giá trị mặc định của SkipInitialSpace là sai, làm cho nó đúng khi sử dụng tham số này.
Ví dụ: & nbsp; Python3import pandas as pd
Các import 9pandas as pd 0
Output: Output: Phương pháp3: Sử dụng chức năng thay thế: & nbsp; 3: Using replace function : Sử dụng hàm thay thế () cũng có thể loại bỏ thêm khoảng trắng khỏi DataFrame. Pandas cung cấp phương thức xác định trước pandas.series.str.replace () để loại bỏ khoảng trắng. Chương trình của nó sẽ giống như Chương trình Phương thức Dải () chỉ có một điểm khác biệt là ở đây chúng ta sẽ sử dụng hàm thay thế tại vị trí của dải ().“pandas.Series.str.replace()” to remove whitespace. Its program will be same as strip() method program only one difference is that here we will use replace function at the place of strip(). Syntax : pandas.Series.str.replace(' ', '') Ví dụ: & nbsp; Python3import pandas as pd
Các n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
7n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
8 # strip leading white spaces
df.columns = list(map(str.lstrip, df))
4Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 0# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 2# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 0__16Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 6# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 8# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6Syntax : pandas.Series.str.replace(' ', '') 0n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
6n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
7Syntax : pandas.Series.str.replace(' ', '') 3 # strip leading white spaces
df.columns = list(map(str.lstrip, df))
4Syntax : pandas.Series.str.replace(' ', '') 5# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6Syntax : pandas.Series.str.replace(' ', '') 7# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6Syntax : pandas.Series.str.replace(' ', '') 9# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6__516map 7map 8
# strip leading white spaces
df.columns = list(map(str.lstrip, df))
4pandas.Index.str 0# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6pandas.Index.str 0# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6__644416pandas.Series.str 2pandas.Series.str 3
pandas.Series.str 4
# strip leading white spaces
df.columns = list(map(str.lstrip, df))
3pandas.Series.str 6pandas.Series.str 7# strip leading white spaces
df.columns = list(map(str.lstrip, df))
73# strip leading white spaces
df.columns = list(map(str.lstrip, df))
74# strip leading white spaces
df.columns = list(map(str.lstrip, df))
75‘ pandas.Series.str 4map 8pandas.Series.str 6pandas.Series.str 7
# strip leading white spaces
df.columns = list(map(str.lstrip, df))
73# strip leading white spaces
df.columns = list(map(str.lstrip, df))
74# strip leading white spaces
df.columns = list(map(str.lstrip, df))
75import 9pandas as pd 0
Output: Phương pháp 2: Sử dụng Skipinitialspace: & nbsp; & nbsp; Nó không phải là bất kỳ phương thức nào nhưng nó là một trong những tham số có bên trong phương thức read_csv () có trong gấu trúc. Bên trong pandas.read_csv () Phương thức SkipinitialSpace tham số có mặt bằng cách sử dụng mà chúng ta có thể bỏ qua không gian ban đầu có mặt trong toàn bộ khung dữ liệu của chúng ta. Theo mặc định, nó là sai, làm cho nó đúng để xóa thêm không gian. & Nbsp; Cú pháp: pandas.read_csv (‘path_of_csv_file, Skipinitialspace = true) pd.read_csv(“path_of_file”, converters={‘column_names’: function_name}) & nbsp;# Theo giá trị mặc định của SkipInitialSpace là sai, làm cho nó đúng khi sử dụng tham số này.
Ví dụ: & nbsp; Python3import pandas as pd
Các Phương pháp3: Sử dụng chức năng thay thế: & nbsp; Sử dụng hàm thay thế () cũng có thể loại bỏ thêm khoảng trắng khỏi DataFrame. Pandas cung cấp phương thức xác định trước pandas.series.str.replace () để loại bỏ khoảng trắng. Chương trình của nó sẽ giống như Chương trình Phương thức Dải () chỉ có một điểm khác biệt là ở đây chúng ta sẽ sử dụng hàm thay thế tại vị trí của dải (). import 9pandas as pd 0
Output: Các Python3import pandas as pd
Các n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
30n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
1n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
25n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
3n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
25n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
5n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
6map 7
n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
8# strip leading white spaces
df.columns = list(map(str.lstrip, df))
4Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 0n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
25Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 2n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
25Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 0n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
25Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 6n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
25Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 8n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
25Syntax : pandas.Series.str.replace(' ', '') 0n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
6map 7
n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
53# strip leading white spaces
df.columns = list(map(str.lstrip, df))
4Syntax : pandas.Series.str.replace(' ', '') 5n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
25Syntax : pandas.Series.str.replace(' ', '') 7n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
25Syntax : pandas.Series.str.replace(' ', '') 9n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
25map 1# strip leading white spaces
df.columns = list(map(str.lstrip, df))
6n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
63map 3n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
25map 5n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
6Phương pháp3: Sử dụng chức năng thay thế: & nbsp; map 7pandas.Series.str 3
Sử dụng hàm thay thế () cũng có thể loại bỏ thêm khoảng trắng khỏi DataFrame. Pandas cung cấp phương thức xác định trước pandas.series.str.replace () để loại bỏ khoảng trắng. Chương trình của nó sẽ giống như Chương trình Phương thức Dải () chỉ có một điểm khác biệt là ở đây chúng ta sẽ sử dụng hàm thay thế tại vị trí của dải (). Các ‘ Phương pháp 4: Sử dụng bộ chuyển đổi: n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
92Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 08n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
98n = 100_000
df = pd.DataFrame([range(n)], columns=[f" {i} {j} " for i,j in zip(range(n), range(n, 0, -1))])
%timeit df.set_axis(df.columns.str.replace('^ +', 'S', regex=True).str.replace(' +$', 'E', regex=True).str.replace(' ', '_'), axis=1)
# 331 ms ± 2.21 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis('S' + df.columns.str.strip().str.replace(' ', '_') + 'E', axis=1)
# 118 ms ± 3.66 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
%timeit df.set_axis(['S' + c.strip().replace(' ', '_') + 'E' for c in df], axis=1)
# 68 ms ± 5.09 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
99Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 11Using Strip() function
Using Skipinitialspace
Using replace function
Using Converters 12import 9pandas as pd 0
Trong đoạn mã trên trong dòng đầu tiên, chúng tôi nhập các thư viện bắt buộc, ở đây gấu trúc được sử dụng để thực hiện & nbsp; đọc, viết và nhiều hoạt động khác trên dữ liệu, sau đó chúng tôi đã tạo một dataframe bằng cách sử dụng gấu trúc có 4 cột ',' tuổi '', ' Blood_group 'và' Giới tính '. Hầu như tất cả các cột có dữ liệu không đều. Bây giờ phần chính bắt đầu từ đây, chúng tôi đã tạo ra một chức năng sẽ loại bỏ thêm khoảng trắng dẫn đầu và kéo theo dữ liệu. Hàm này lấy DataFrame làm tham số và kiểm tra kiểu dữ liệu của từng cột và nếu kiểu dữ liệu của cột là ‘đối tượng thì áp dụng chức năng dải được xác định trước trong thư viện PANDAS trên cột đó, nó sẽ không làm gì cả. Sau đó, trong dòng tiếp theo, chúng tôi áp dụng hàm whitespace_remover () trên dataFrame để loại bỏ thành công khoảng trắng thêm ra khỏi các cột.‘Names’, ‘Age’, ‘Blood_Group’ and ‘Gender’. Almost all columns having irregular data. Now the major part begin from here, we created a function which will remove extra leading and trailing whitespace from the data. This function taking dataframe as a parameter and checking datatype of each column and if datatype of column is ‘Object’ then apply strip function which is
predefined in pandas library on that column else it will do nothing. Then in next line we apply whitespace_remover() function on the dataframe which successfully remove the extra whitespace from the columns. Output:
Làm cách nào để loại bỏ một khoảng trống trong gấu trúc?
Cách dễ nhất để loại bỏ khoảng trắng hàng đầu và dấu vết trong gấu trúc là sử dụng bộ truy cập str cung cấp khả năng của gấu trúc để sử dụng các chức năng chuỗi.
Làm cách nào để cắt một chuỗi trong một python dataframe?
Chuỗi trang trí Python: Cách cắt một chuỗi trong Python.. dải ().Loại bỏ bất kỳ dấu vết nào và khoảng trắng hàng đầu, bao gồm các tab,. Lstrip () loại bỏ bất kỳ khoảng trắng nào hàng đầu-có nghĩa là phía bên trái của chuỗi,. rstrip ().Xóa bất kỳ khoảng trắng nào theo ý nghĩa, phía bên phải của chuỗi ..
Làm cách nào để loại bỏ khoảng trống khỏi tên cột Pandas DataFrame?
Để tước khoảng trắng từ tên cột, bạn có thể sử dụng str.strip, str.lstrip và str.rstrip.str. strip, str. lstrip and str. rstrip.
Làm thế nào để bạn loại bỏ khoảng trắng trong một cột trong Python?
Example.. Để thay thế tất cả khoảng trắng từ cột 'A', chúng ta có thể sử dụng phương thức str.Replace (~):. Để loại bỏ tất cả các không gian trắng dẫn đầu và theo dõi khỏi cột 'A', chúng ta có thể sử dụng phương thức str.strip (~):. Để loại bỏ tất cả các không gian trắng hàng đầu khỏi cột 'A', chúng ta có thể sử dụng phương thức str.lstrip (~):. |