Sử dụng hàm dropna[] để thả các hàng có giá trị
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
3/
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
4 trong DataFrame của gấu trúc. Python không hỗ trợ Null do đó mọi dữ liệu bị thiếu được biểu thị là Không có hoặc NaN. NaN là viết tắt của Not A Number và là một trong những cách phổ biến để biểu thị giá trị còn thiếu trong dữ liệu. Giá trị không có/NaN là một trong những vấn đề chính trong Phân tích dữ liệu, do đó, trước khi chúng tôi xử lý, bạn cần loại bỏ các hàng có giá trị NaN hoặc thay thế NaN bằng giá trị trống cho Chuỗi và thay thế NaN bằng 0 cho các cột sốpandas Drop Rows với NaN key Points
- dropna[] được sử dụng để thả các hàng có giá trị
3/import pandas as pd import numpy as np technologies = [{ 'Courses':["Spark",'Java',"Hadoop",'Python',np.nan], 'Fee' :[20000,np.nan,26000,24000,np.nan], 'Duration':['30days',np.nan,'35days','40days',np.nan], 'Discount':[1000,np.nan,2500,None,np.nan] }] df = pd.DataFrame[technologies] print[df]
4 từ DataFrameimport pandas as pd import numpy as np technologies = [{ 'Courses':["Spark",'Java',"Hadoop",'Python',np.nan], 'Fee' :[20000,np.nan,26000,24000,np.nan], 'Duration':['30days',np.nan,'35days','40days',np.nan], 'Discount':[1000,np.nan,2500,None,np.nan] }] df = pd.DataFrame[technologies] print[df]
7 không phải là số [NaN], thuộc loại số float [dấu phẩy động] tích hợp sẵn trong Pythonimport pandas as pd import numpy as np technologies = [{ 'Courses':["Spark",'Java',"Hadoop",'Python',np.nan], 'Fee' :[20000,np.nan,26000,24000,np.nan], 'Duration':['30days',np.nan,'35days','40days',np.nan], 'Discount':[1000,np.nan,2500,None,np.nan] }] df = pd.DataFrame[technologies] print[df]
4 thuộc NoneType và nó là một đối tượng trong Pythonimport pandas as pd import numpy as np technologies = [{ 'Courses':["Spark",'Java',"Hadoop",'Python',np.nan], 'Fee' :[20000,np.nan,26000,24000,np.nan], 'Duration':['30days',np.nan,'35days','40days',np.nan], 'Discount':[1000,np.nan,2500,None,np.nan] }] df = pd.DataFrame[technologies] print[df]
1. Ví dụ nhanh về các hàng thả với giá trị NaN
Nếu bạn đang vội, dưới đây là một số ví dụ nhanh về cách loại bỏ các hàng có giá trị nan trong DataFrame
# Below are a quick example
# Drop all rows with NaN values
df2=df.dropna[]
df2=df.dropna[axis=0]
# Reset index after drop
df2=df.dropna[].reset_index[drop=True]
# Drop row that has all NaN values
df2=df.dropna[how='all']
# Drop rows that has NaN values on selected columns
df2=df.dropna[subset=['Courses','Fee']]
# With threshold,
# Keep only the rows with at least 2 non-NA values.
df2=df.dropna[thresh=2]
# Drop Rows with NaN Values inplace
df.dropna[inplace=True]
Bây giờ, hãy tạo một DataFrame với một vài hàng và cột và thực hiện một số ví dụ để tìm hiểu bằng cách sử dụng các hàng thả xuống có giá trị nan. Khung dữ liệu của chúng tôi chứa các tên cột
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
9,
Courses Fee Duration Discount
0 Spark 20000.0 30days 1000.0
1 Java NaN NaN NaN
2 Hadoop 26000.0 35days 2500.0
3 Python 24000.0 40days NaN
4 NaN NaN NaN NaN
0,
Courses Fee Duration Discount
0 Spark 20000.0 30days 1000.0
1 Java NaN NaN NaN
2 Hadoop 26000.0 35days 2500.0
3 Python 24000.0 40days NaN
4 NaN NaN NaN NaN
1 và
Courses Fee Duration Discount
0 Spark 20000.0 30days 1000.0
1 Java NaN NaN NaN
2 Hadoop 26000.0 35days 2500.0
3 Python 24000.0 40days NaN
4 NaN NaN NaN NaN
2
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
Sản lượng dưới sản lượng
________số 82. Xoá hàng với giá trị NaN
Bằng cách sử dụng phương thức dropna[], bạn có thể thả các hàng có giá trị NaN [Không phải là số] và Không có giá trị nào từ DataFrame của gấu trúc. Lưu ý rằng theo mặc định, nó trả về bản sao của DataFrame sau khi xóa hàng. Nếu bạn muốn xóa khỏi DataFrame hiện có, bạn nên sử dụng
Courses Fee Duration Discount
0 Spark 20000.0 30days 1000.0
1 Java NaN NaN NaN
2 Hadoop 26000.0 35days 2500.0
3 Python 24000.0 40days NaN
4 NaN NaN NaN NaN
3
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
4Sản lượng dưới sản lượng
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
5Ngoài ra, bạn cũng có thể sử dụng
Courses Fee Duration Discount
0 Spark 20000.0 30days 1000.0
1 Java NaN NaN NaN
2 Hadoop 26000.0 35days 2500.0
3 Python 24000.0 40days NaN
4 NaN NaN NaN NaN
4 làm thông số để xóa các hàng bằng NaN, ví dụ như
Courses Fee Duration Discount
0 Spark 20000.0 30days 1000.0
1 Java NaN NaN NaN
2 Hadoop 26000.0 35days 2500.0
3 Python 24000.0 40days NaN
4 NaN NaN NaN NaN
5. Sử dụng dropna[axis=1] để thả tất cả các cột có giá trị NaN khỏi DataFrameĐăng các hàng bị giảm bằng NaN, đôi khi bạn có thể yêu cầu đặt lại chỉ mục, bạn có thể làm như vậy bằng DataFrame. phương thức reset_index[]
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
8Sản lượng dưới sản lượng
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
93. Bỏ NaN cho tất cả các Cột trong DataFrame
Sử dụng tham số
Courses Fee Duration Discount
0 Spark 20000.0 30days 1000.0
1 Java NaN NaN NaN
2 Hadoop 26000.0 35days 2500.0
3 Python 24000.0 40days NaN
4 NaN NaN NaN NaN
6 để chỉ định cách bạn muốn xóa hàng. Theo mặc định,
Courses Fee Duration Discount
0 Spark 20000.0 30days 1000.0
1 Java NaN NaN NaN
2 Hadoop 26000.0 35days 2500.0
3 Python 24000.0 40days NaN
4 NaN NaN NaN NaN
7 được chỉ định xóa các hàng khi có NaN/Không có trên bất kỳ phần tử nào [thiếu dữ liệu trên bất kỳ phần tử nào]Sử dụng
Courses Fee Duration Discount
0 Spark 20000.0 30days 1000.0
1 Java NaN NaN NaN
2 Hadoop 26000.0 35days 2500.0
3 Python 24000.0 40days NaN
4 NaN NaN NaN NaN
8 để xóa các hàng có tất cả các giá trị NaN/Không có giá trị nào trong một hàng [thiếu dữ liệu cho tất cả các thành phần trong một hàng]
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
3Sản lượng dưới sản lượng
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
44. Thả giá trị NaN trên các cột đã chọn từ danh sách
Đôi khi, bạn có thể được yêu cầu chỉ bỏ hàng khi các cột đã chọn có giá trị NaN/Không có trong DataFrame, bạn có thể đạt được điều này bằng cách sử dụng thông số
Courses Fee Duration Discount
0 Spark 20000.0 30days 1000.0
1 Java NaN NaN NaN
2 Hadoop 26000.0 35days 2500.0
3 Python 24000.0 40days NaN
4 NaN NaN NaN NaN
9. Thông số này có một danh sách các tên nhãn
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
6Sản lượng dưới sản lượng
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
05. Thả hàng với giá trị NaN tại chỗ
Như bạn đã thấy, theo mặc định, phương thức
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
40 không loại bỏ các hàng khỏi DataFrame hiện có, thay vào đó, nó trả về một bản sao của DataFrame. Nếu bạn muốn bỏ DataFrame hiện có, hãy sử dụng
Courses Fee Duration Discount
0 Spark 20000.0 30days 1000.0
1 Java NaN NaN NaN
2 Hadoop 26000.0 35days 2500.0
3 Python 24000.0 40days NaN
4 NaN NaN NaN NaN
3
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
16. Hoàn thành ví dụ về hàng thả với giá trị NaN
Dưới đây là một ví dụ đầy đủ về cách xóa các hàng có giá trị NaN khỏi DataFrame
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
2Phần kết luận
Trong bài viết này, bạn đã học cách xóa các hàng có giá trị NaN/Không có trong DataFrame của gấu trúc bằng cách sử dụng
import pandas as pd
import numpy as np
technologies = [{
'Courses':["Spark",'Java',"Hadoop",'Python',np.nan],
'Fee' :[20000,np.nan,26000,24000,np.nan],
'Duration':['30days',np.nan,'35days','40days',np.nan],
'Discount':[1000,np.nan,2500,None,np.nan]
}]
df = pd.DataFrame[technologies]
print[df]
42. Cũng đã học cách chỉ xóa các hàng khi tất cả các giá trị là NaN/Không, chỉ xóa khi các cột được chọn có giá trị NaN và xóa bằng tham số tại chỗ