相关疑难解决方法(0)

更快速地将Excel文件读取到pandas数据帧

我有一个14MB的Excel文件和五个工作表我正在阅读Pandas数据帧,虽然下面的代码有效,但需要9分钟!

有没有人有加快速度的建议?

import pandas as pd

def OTT_read(xl,site_name):
    df = pd.read_excel(xl.io,site_name,skiprows=2,parse_dates=0,index_col=0,
                       usecols=[0,1,2],header=None,
                       names=['date_time','%s_depth'%site_name,'%s_temp'%site_name])
    return df

def make_OTT_df(FILEDIR,OTT_FILE):
    xl = pd.ExcelFile(FILEDIR + OTT_FILE)
    site_names = xl.sheet_names
    df_list = [OTT_read(xl,site_name) for site_name in site_names]
    return site_names,df_list

FILEDIR='c:/downloads/'
OTT_FILE='OTT_Data_All_stations.xlsx'
site_names_OTT,df_list_OTT = make_OTT_df(FILEDIR,OTT_FILE)
Run Code Online (Sandbox Code Playgroud)

python import-from-excel pandas

23
推荐指数
4
解决办法
3万
查看次数

使用python中pandas的read_excel函数将日期保留为字符串

Python 2.7.10
试过熊猫 0.17.1 -- 函数 read_excel
试过 pyexcel 0.1.7 + pyexcel-xlsx 0.0.7 -- 函数 get_records()

在 Python 中使用 Pandas 时,是否可以读取 excel 文件(格式:xls|xlsx)并将包含日期日期 + 时间值的列保留为字符串,而不是自动转换datetime.datetimetimestamp类型?

如果使用熊猫这是不可能的,有人可以建议另一种方法/库来读取xls|xlsx文件并将日期列值保留为字符串吗?

对于熊猫解决方案尝试df.info()和结果日期列类型如下所示:

>>> df.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 117 entries, 0 to 116
Columns: 176 entries, Mine to Index
dtypes: datetime64[ns](2), float64(145), int64(26), object(3)
memory usage: 161.8+ KB
>>> type(df['Start Date'][0])
Out[6]: pandas.tslib.Timestamp
>>> type(df['End Date'][0]) …
Run Code Online (Sandbox Code Playgroud)

python excel datetime pandas

9
推荐指数
3
解决办法
1万
查看次数

标签 统计

pandas ×2

python ×2

datetime ×1

excel ×1

import-from-excel ×1