import pandas as pd
import numpy as nu
import matplotlib.pyplot as plt
import matplotlib
import os
import openpyxl
import xlrd
figure = plt.figure()
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
"""
#----------------------------写入excel--------------------------
pandas.read_excel(filename, sep, sheet_name,header,usecols,encoding)
filename:文件路径,可以设置为绝对路径或相对路径
sep:分隔符,常用的有逗号 , 分隔、\t 分隔,默认逗号分隔,read_table默认是'\t'(也就是tab)切割数据集的
sheet_name 指定第几张表sheet1
header:指定表头,即列名,默认第一行,header = None, 没有表头,全部为数据内容
encoding:文件编码方式,不设置此选项, Pandas 默认使用 UTF-8 来解码。
index_col ,指定索引对应的列为数据框的行标签,默认 Pandas 会从 0、1、2、3 做自然排序分配给各条记录指定某一列为索引
usecols指定要读取哪一列,如要读1和2列 usecols=[0,1]
表格内容读出来后转成字典,因为写入pd是直接用字典方法写的:
data = pd.read_execl("表名")
data2 = data.to_dict(orient="records")
再用字典方法写进:
DataFrame(data2).to_execl("表名",sheet_name="Sheet1",index=False,header=True)
别一种单个写入:
raw_data = [{"name":"yeng","age":22}]
data = pd.DataFrome(raw_data)
#cur_dir = os.path.dirname(__file__)
#建立一个dataframe数量类型
#res = pd.DataFrame(columns=("姓名", "年纪", "性别"))
#建立表头
#res.loc[1]=["老一", 22, "男"]
#新建立一行数据
#res.to_excel(os.path.join(cur_dir, "2.xlsx"))
#建立 文件并写入上面的数据
#df =pd.read_excel(os.path.join(cur_dir, "2.xlsx"))
#读取数据
#print(df.head())
#--------------------------------------------------------
#cur_dir = os.path.dirname(__file__)
#df2 = pd.DataFrame({"性别":["女","男"], "姓名":["老一","老二"]})
#df2.to_excel(os.path.join(cur_dir, "2.xlsx"), sheet_name="sheet1", startcol=0, index=False)
#新建立个表写入两列数据,重第一列开始
"""
"""
pandas.read_excel(filename, sep, sheet_name,header,usecols,encoding)
filename:文件路径,可以设置为绝对路径或相对路径
sep:分隔符,常用的有逗号 , 分隔、\t 分隔,默认逗号分隔,read_table默认是'\t'(也就是tab)切割数据集的
sheet_name 指定第几张表sheet1
header:指定表头,即列名,默认第一行,header = None, 没有表头,全部为数据内容
encoding:文件编码方式,不设置此选项, Pandas 默认使用 UTF-8 来解码。
index_col ,指定索引对应的列为数据框的行标签,默认 Pandas 会从 0、1、2、3 做自然排序分配给各条记录指定某一列为索引
usecols指定要读取哪一列,如要读1和2列 usecols=[0,1]
遍历所有的行:
data = pd.read_execl("表名")
for index,row in data.iterrows():
print(row["name"],row["age"])
print(row[0],row[1])
result = pd.read_excel("送货模版.xlsx")
print(result)
默认读第一个sheet1表
# 默认读取第一个sheet,读取第2个sheet如下
result = pd.read_excel('test1.xlsx',sheet_name=1)
print(result)
# 查看列索引列表(表头)
result = pd.read_excel("送货模版.xlsx")
print(result.drop(labels=[1,3], axis=0))
删除第一和第三行
result = pd.read_excel("送货模版.xlsx")
print(result.drop_duplicates())
删除重复的值
result = pd.read_excel("送货模版.xlsx")
print(result.drop(labels=["配送时间"], axis=1))
删除列
result = pd.read_excel("送货模版.xlsx")
print(result.rename(columns={"配送时间":"发货"}))
改表头
df = pd.read_excel("送货模版.xlsx")
#print(df.dtypes)
#查看表各列类型
data = df["配送时间"]
data.plot()
plt.show()
#出单列统计图
"""
"""
#data = pd.read_csv("1.csv", encoding='gb2312')
#/读取整个表的文件,如果报错就换gb18030、utf-8、gbk
"""