在 Python 中使用来自 Dataframe 索引的数据创建列表

Posted

技术标签:

【中文标题】在 Python 中使用来自 Dataframe 索引的数据创建列表【英文标题】:Creating a list with data from a Dataframe index in Python 【发布时间】:2014-08-25 03:48:48 【问题描述】:

我在尝试将 df 的索引(参见代码)转换为列表时遇到了麻烦,因为当我运行它时,这个列表是一个“时间戳”(我不知道这意味着什么)。代码是

quote='AAPL'
stock = DataReader(quote,'yahoo',start_date,end_date)
stock.head()
df=DataFrame(stock)
xdata = df.index.tolist()

然后当我运行时我得到

[Timestamp('2010-01-04 00:00:00'), Timestamp('2010-01-05 00:00:00'), Timestamp('2010-01-06 00:00:00'), Timestamp('2010-01-07 00:00:00'), Timestamp('2010-01-08 00:00:00')]

但我想要这样的东西:

['2010-01-04', '2010-01-05'), ...,'2010-01-08')]

有人可以帮我解决这个问题吗?

提前致谢!

【问题讨论】:

df.index.map(pd.Timestamp.date).tolist()df.index.date.tolist() TimeStamp 是类似于 numpy 的 datetime64 的 pandas dtype,你最好保持索引不变,因为当你想做一些与日期时间相关的操作时,比如找到两个时间戳之间的行或 min/max 如果您转换为字符串,您将无法执行此操作。 【参考方案1】:
ts_list = df.index.tolist()  # a list of Timestamp's
date_list = [ ts.date() for ts in ts_list ]  # a list of datetime.date's
date_str_list = [ str(date) for date in date_list ]  # a list of strings

【讨论】:

以上是关于在 Python 中使用来自 Dataframe 索引的数据创建列表的主要内容,如果未能解决你的问题,请参考以下文章

Python-requests POST JSON 格式的文本字符串,使用来自 Pandas DataFrame 的数据,循环通过 DataFrame 记录

来自Python Dictionary的PySpark Dataframe没有Pandas

来自文本文件的大量数据的Python DataFrame数据分析

来自 Geopandas Dataframe 的 Python Chloropleth Mapbox

来自pandas dataframe python的barh图中行的不同颜色

来自 Python 嵌套字典的 Pandas Dataframe