import pandas as pd
处理时间序列
# 使用date_range方法生成时间序列,freq参数的常用值及含义如下
# D ---> 日
# M ---> 月
# Y ---> 年
# H ---> 小时
# W ---> 星期
# S ---> 秒
pd.date_range('24/2/2020', '25/3/2020', freq='D')
结果为:
生成了2020年2月24日到2020年3月25日的时间序列,间隔为1天。
类别型
# 生成6行2列的源数据
df = pd.DataFrame(data={'id':np.arange(1,7), 'grade':['a','b','b','a','e','e']})
df
结果为(id可理解为学生的编号,grade为学生的成绩)
# 查看每列的数据类型
df.dtypes
结果为
现在成绩列的数据为object类型。
# 添加一列,将成绩列的数据改为category类型
df['score'] = df['grade'].astype('category')
再次查看数据类型
df.dtypes
结果为
新添加的列为category类型(会自动将数据进行分类)。
# 用有含义的名字重命名不同类型的数值
df['score'].cat.categories = ['very good','good','very bad']
df
结果为
这里是将成绩为“a”改为“very good”,以此类推。
文件读写操作
- 读文件
# 读文本文件
pd.read_csv('./data.txt', index_col=0)
结果为
# 读Excel文件
pd.read_excel('./data.xls', index_col=0)
结果为
# 读json文件
pd.read_json('./data.json')
结果为
- 写文件
# 生成数据
df = pd.DataFrame(np.random.randint(0,151,size = (10000,3)),columns = ['Chinese','Math','English'])
df.head()
结果为
# 写入excel中
df.to_excel('./data.xls')
# 写到文本中
df.to_csv('./data.csv')
df.to_csv('./data.txt')
# 写到json
df.to_json('./data.json')