提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
提示:以下是本篇文章正文内容,下面案例可供参考
示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
代码如下(示例):
import pandas as pd
# 读取excel文件内容
def read(file_path):
data_from = pd.read_excel(io=file_path,sheet_name='Sheet1',keep_default_na=False,dtype=str,engine='openpyxl')
print(data_from) #输出的是一个DataFrom表单
参数解析
区别:
loc函数:通过行索引 “Index” 中的具体值来取行数据
iloc函数:通过行号来取行数据
获取行时写法差不多,
ps : data_from.iloc[初始行:结束行,初始列:结束列]
loc方法是通过行、列的名称或者标签来寻找我们需要的值。
1.获取某一行,会带着标题行
data_from.loc[1]
2。获取某一列,通过列名
data_from.loc[:,'列名]
data_from.iloc[:,:]
4.获取第一到第二列
data_from.loc[:,1.1:1.2]
1.获取第一行,和loc方法写法一样
data_from.iloc[1]
2.获取第一列,通过index
data_from.iloc[:,0]
3.获取全部数控
data_from.iloc[:,:]
4.获取第一到第二列
data_from.iloc[:,1:2]
df=data_from[data_from['船公司']=='COSCO']
number = df.iloc[:,0]
goal = df.iloc[:,10]
data_from.shape[0] # data_from 是表单数据
goal = df.iloc[:,10].str.len() # str.len() 获取字符串长度
data = [11,14]
# 属于data的 ,data是可迭代数据
data_frome_no_length = df[df.iloc[:, 0].str.len().isin(data )]
# 获取筛选后数据行数
if data_frome_no_length.shape[0] != 0:
pass
data = [11,14]
data_frome_no_length = df[~df.iloc[:, 0].str.len().isin(data)]
if data_frome_no_length.shape[0] != 0:
pass
转换数据可以通过下标取出对应列数据
data_dic = data_from.to_dict(orient='index')
也可以通过列名
data_dic =data_from.to_dict('records')
pd.DataFrame(data_dic)
#循环遍历每一行
count = 1
for i in data_dic:
if i[1.5] is None or i[1.5] == '':
i[1.5] = 5
# continue
else:
# print(i)
i[1.5] = 5
print(data_dic)
实现步骤:
字典数据转DataFrame
这里 df 是 DataFrame简称
df = pd.DataFrame(data_dic)
df.to_excel('./cs.xlsx')
type(number) #输出pandas.core.series.Series
number = number.values.tolist() #转换之后就是list类型数据
shutil.copy(old_file_name, new_file_path)
wb = openpyxl.load_workbook(new_file_path)
ws = wb['Sheet1'] # 第一个Sheet页
ws.cell(row=5, column=15).value = ’测试‘
img = Image(r'D:\ZJGL\img.png') # 选择你的图片
ws.add_image(img, 'G47')
wb.save(new_file_path)
标记重复记录下标
df2= df.loc[df.duplicated(subset=['取证链接', '敏感内容', '正确表述', '报告类型', '目标名称']), '办公地址'] = 'true'
去除重复数据
df.drop_duplicates(subset=['取证链接', '敏感内容', '正确表述', '报告类型', '目标名称'], keep=False, inplace=True)
file_path = '.xls文件路径'
rb = open_workbook(file_path,formatting_info=True) # formatting_info=True 保留格式
r_sheet = rb.sheet_by_index(0) # 切换到第一个Sheet 页面
wb = copy(rb) # 复制file_path路径的文件
w_sheet = wb.get_sheet(0) # 写入的页(Sheet)
w_sheet.write(row_index, col_summer1, 'data')
w_sheet.write(row, line, ‘data’) , 行和列都从0开始
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。