更明确一点,我有这种类型的数据
2011,1,14, Orange ,Buy,1500,
2011,1,19, Apple ,Sell,1500,
2011,1,19, Banana ,Buy,4000,
我正在尝试将其直接读入DataFrame,其中包含列= [' date',' fruit',' trade',' quantity&# 39;]这样的形状。
print df_grocer.date
2011-01-14 16:00:00
2011-01-19 16:00:00
2011-01-19 16:00:00
和
print df_grocer.fruit
Orange
Apple
Banana
提前致谢
答案 0 :(得分:2)
parse_dates:boolean或整数或名称列表或列表或dict列表,默认为False
- 布尔值。如果为True - >尝试解析索引。
- 整体或名称列表。例如如果[1,2,3] - >尝试将第1,2,3列分别解析为单独的日期列。
- 列表清单。例如如果 [[1,3]] - >将第1列和第3列组合在一起并解析为 单日期栏。
- dict,例如 {'foo':[1,3]} - >将第1,3列解析为日期并调用结果'foo'
注意:iso8601格式的日期存在快速路径。
from io import StringIO
import pandas as pd
txt = """2011,1,14, Orange ,Buy,1500,
2011,1,19, Apple ,Sell,1500,
2011,1,19, Banana ,Buy,4000,"""
df = pd.read_csv(
StringIO(txt),
skipinitialspace=True,
header=None,
parse_dates=dict(date=[0, 1, 2]),
usecols=[0, 1, 2, 3, 4, 5],
names=['_', '_', '_', 'fruit', 'trade', 'quantity']
)
print(df)
date fruit trade quantity
0 2011-01-14 Orange Buy 1500
1 2011-01-19 Apple Sell 1500
2 2011-01-19 Banana Buy 4000