#缺失值处理 import pandas as pd df1 = pd.read_excel(r'E:\\data\\蔬菜相关数据.xlsx') df1 #查看规格列包含具体种类 p1 = df1['规格'].drop_duplicates() ww = [] for i in p1:ww.append(i) ww #查看规格列各种类出现的次数 from collections import Counter Counter(df1['规格'])解析代码
时间: 2023-12-06 19:40:31 浏览: 35
#缺失值处理
import pandas as pd
#读取Excel文件
df1 = pd.read_excel(r'E:\\data\\蔬菜相关数据.xlsx')
#查看规格列包含具体种类
p1 = df1['规格'].drop_duplicates()
ww = []
for i in p1:
ww.append(i)
ww
#查看规格列各种类出现的次数
from collections import Counter
Counter(df1['规格'])
上述代码中,首先我们使用 Pandas 库中的 read_excel() 函数读取 Excel 文件,并将其存储在 DataFrame 中。
接下来,我们使用 drop_duplicates() 函数从 DataFrame 中获取规格列中的唯一值,并将其存储在列表 p1 中。
然后,我们使用 for 循环遍历 p1 列表,并将其添加到列表 ww 中,以便查看规格列包含哪些种类。
最后,我们使用 collections 库中的 Counter() 函数计算规格列中每个种类出现的次数,并打印输出结果。
相关问题
#缺失值处理 import pandas as pd df1 = pd.read_excel(r'E:\\data\\蔬菜相关数据.xlsx') df1 #查看各元素是否为空值 df1.isnull() #查看各列是否存在空值 #只要该列有空值,就为True df1.isnull().any() #各列含空值的具体数目 df1.isnull().sum()解析代码
这段代码是用来处理缺失值的。具体而言,它首先导入了 pandas 库,并读取了一个 Excel 文件,存储在变量 df1 中。然后,它通过 df1.isnull() 这一方法来检查 df1 中的每个元素是否为空值,返回一个布尔型的 DataFrame。接着,它通过 df1.isnull().any() 这一方法来检查每一列是否存在空值,并返回一个布尔型的 Series,如果该列有空值则为 True。最后,通过 df1.isnull().sum() 这一方法,可以得到各列含空值的具体数目,返回一个 Series。这些操作可以帮助我们更好地理解数据集中缺失值的情况,从而选择合适的方法进行处理。
#%% import pandas as pd import numpy as np import matplotlib.pyplot as plt # 读取Excel文件中的所有表格 excel_file = pd.ExcelFile('附件1-装箱数据.xlsx') # 读取指定表格 df1 = pd.read_excel(excel_file, sheet_name='订单数据') df2 = pd.read_excel(excel_file, sheet_name='耗材数据') # 检查是否有缺失值 print(df1.isnull().sum()) print(df2.isnull().sum()) print(df1.head()) print(df2.head()) df2=df2['耗材类型'].replace({'袋':1, '箱': 0}, inplace=True) df2.drop(columns=['重量']).values print(df1.head()) print(df2.head())
这段代码主要是对Excel文件中的两个表格进行读取,并进行了一些简单的数据处理和检查缺失值的操作。具体解释如下:
- 首先,通过 pandas 库中的 ExcelFile 类读取 Excel 文件中的所有表格。
- 然后,使用 read_excel() 方法读取指定的表格,并将其存储为 DataFrame 对象,分别命名为 df1 和 df2。
- 接着,使用 isnull() 和 sum() 方法检查 df1 和 df2 中是否有缺失值。
- 然后,使用 head() 方法查看 df1 和 df2 的前几行数据,以确保读取正确。
- 接下来,对 df2 中的耗材类型进行转换,转换为数字表示,袋为1,箱为0。
- 然后,使用 drop() 方法删除 df2 中的重量列,并使用 values 属性将其转换为 NumPy 数组。
- 最后,再次使用 head() 方法查看 df1 和 df2 的前几行数据,以确保数据处理和转换正确。
需要注意的是,代码中的 df2=df2['耗材类型'].replace({'袋':1, '箱': 0}, inplace=True) 这一行不是很合理,因为它实际上没有对 df2 进行任何操作。正确的写法应该是 df2['耗材类型'].replace({'袋':1, '箱': 0}, inplace=True)。