数据分析之pandas基本使用(DataFrame系列)

一、安装pandas

pip install pandas

二、数据结构

pandas有两种数据结构,这里篇幅主要讲述DataFrame。

DataFrame相当于一种二维的数据模型,相当于excel表格中的数据,有横竖两种坐标,横轴很Series 一样使用index,竖轴用columns 来确定,在建立DataFrame 对象的时候,需要确定三个元素:数据,横轴,竖轴。

三、DataFrame基本使用

1 创建DataFrame数据

  创建不是我们本次的重点,我们所直接使用下列读取现有表的方法

2 读取excel/csv,读取到的数据在DataFrame具柄中进行处理

# 读取test.xls,并指定sheet
df =  pd.DataFrame(pd.read_excel('test.xls',sheet_name='detail'))

3 抽取指定列名赋值给need_df

 # 指定列名,将这一列赋值到package_num_df 这个具柄,并打印结果
need_df = df[['工厂','仓库','捆包号','树种','规格','账面数量','账面米数']]
print(need_df) 

4 在need_df的dataframe中筛选[捆包号]=J-0001-04,并打印结果

find_need_df = need_df.loc[need_df['捆包号'] == 'J-0001-04']
print(find_need_df)

5在df的dataframe中删除label标签=1 的数据并打印结果(dataframe只存在于内存中,并不会改变原来的excle表数据,可以通过将内容中的dataframe重新赋值给新表即可

#删除行号=1的那一整行,axis默认=0,inplace默认=False(不删除原来excel的数据) 标志为True的话就说明将存储在内存中的df 行号为1进行删除
res = df.drop(labels=1, axis=0, inplace=True)  
print(df)

find_need_df = need_df.loc[need_df['捆包号'] == '原来df数据

drop后df的数据

6写入excel/csv

#安装本地目录,格式化制定文件名称
wb_path = os.path.join(dir_path,'work_book')
ctime = datetime.datetime.now().strftime('%Y%m%d_%H%M')
df.to_excel('%s/%s_detail.xls'%(wb_path,ctime))

若遇到 # ModuleNotFoundError: No module named 'xlwt' ,则需要安装xlwt模块

find_need_df.to_csv('temp.csv', mode='a', encoding='gbk')

三、数据透视表

未完待续 

猜你喜欢

转载自www.cnblogs.com/lich1x/p/11319364.html