Python科研数据分析专题之数据文件读取、拼接与保存

Python科研数据分析专题(一)

  • 数据文件的读取、拼接与保存
    • 导入第三方库
    • 表单拼接
    • 数据保存

数据文件的读取、拼接与保存

Sim_Jackson | 2023

导入第三方库

首先导入必要的第三方库

import pandas as pd
import os
dir_ = r'你的文件地址'
os.chdir(dir_)

列出该地址下的所有文件

files = os.listdir(dir_) # 将该地址下的文件都列出来
print(files)

输出结果:[‘data.xlsx’, ‘google.csv’]

数据读取

df1 = pd.read_excel(files[0]) # python的索引是从0开始的,所以这里读取的是'data.xlsx'
df2 = pd.read_csv(files[1]) # 读取的就是google.csv

展示得到的结果

df1

Python科研数据分析专题之数据文件读取、拼接与保存_第1张图片

df2

Python科研数据分析专题之数据文件读取、拼接与保存_第2张图片

表单拼接

由于我们这里的两张表都有time的字符,所以很容易联想到以time为键进行拼接。然而,这样得到的结果为:

pd.merge(df1,df2,on='time') # 拼接操作,on为拼接的索引

在这里插入图片描述
为空值。原因在于我们所获得的时间序列并不是一致的。

print(df1['time'][0])
print(df2['time'][0])

2020-01-01
2020/1/1

df1['time'][0]==df2['time'][0]

False

因此,需要首先将字符串形式的时间换成python自带的时间戳格式(也即统一时间格式,方便后面根据时间来拼接表格)。

dflst = [df1,df2]
for df_ in dflst:
    df_['time']=pd.to_datetime(df_['time'])

当然也可以这样操作:

df1['time']=pd.to_datetime(df1['time']) # 时间格式的转换操作
df2['time']=pd.to_datetime(df2['time']) # 时间格式的转换操作

之后就可以进行正常的数据拼接啦!

df = pd.merge(df1,df2,on='time')
df

Python科研数据分析专题之数据文件读取、拼接与保存_第3张图片

数据保存

# 保存为excel格式
df.to_excel("reaseach_data.xlsx",index=False)
# 保存为csv格式
df.to_excel("reaseach_data.csv",index=True)

index即为前面的数据索引,如果设置为True,默认会保存,False即为不保存。

你可能感兴趣的:(Python科研数据分析,数据分析,pandas,python)