1、数据描述及要求:
详见文章末尾,需要练习的,直接复制,保存为csv文件。
数据的前三行(1,2,3)和后三行(16,17,18)为不需要保存的数据。
要求:丢弃这六行,在另外一个文件夹中保存中间的部分。
2、pandas模块思路分析
- 使用drop方法索引和丢弃不要的列。
- 使用.iloc[ ]方法,用整数来索引行或者列。
- 使用reindex方法,重新生成索引。
- 用to_csv()保存需要保存的行
问题:
用不用reindex的差别是什么?
3、涉及方法学习:
1)pandas.DataFrame.drop
DataFrame.drop(self, labels=None, axis=0, index=None, columns=None, level=None, inplace=False, errors=‘raise’)[source]
删除指定标签的行或者列。
通过指定行或者列标签名称或者相关的轴名称来删除该行或者列。也可以通过直接指定需要删除的索引值或者列名称来删除行或者列。如果使用多重索引,一旦指定需要删除的层级,那么也可以删除该层级的标签。
2)pandas.DataFrame.reindex
** DataFrame.reindex(self, labels=None, index=None, columns=None, axis=None, method=None, copy=True, level=None, fill_value=nan, limit=None, tolerance=None)**
按照一定的填充逻辑(可以添加或者默认),为数据结构(表格)建立新索引。
如果先前没有这个索引,那么该方法会将NA或者NaN填充到新增的索引的值中。除非新索引跟就索引相同而且copy= False,否则该方法会生成一个新的对象。
详见:
3)pandas.DataFrame.columns
返回数据表格的列标签
4)pandas.DataFrame.index
返回数据表格的索引或者行标签
4、实现代码:
import pandas as pd
file1 = 'supplier_data1.csv'
file2 = 'output_file.csv'
data_frame = pd.read_csv