如何使用 Pandas 从 csv 文件的列中提取日期?

普拉提克·梅农

这是 csv 文件中的“播出”列:作为

链接到 csv 文件:https : //drive.google.com/file/d/1w7kIJ5O6XIStiimowC5TLsOCUEJxuy6x/view? usp =sharing

我想从“from”单词后面的日期中提取日期和月份(以单词为单位),并将其存储在另一个 csv 文件的单独列中。'from' 是一个障碍,因为如果它只是作为时间戳格式很容易提取的日期。

科学

您从一个字符串开始,并希望分解其中的数据。单引号表明这是一个字符串形式的 dict 结构。Python 标准库包括ast(Abstract Syntax Trees) 模块,该模块的literal_eval方法可以将字符串读入 dict,从这个 SO 答案中收集:Convert a String representation of a Dictionary to a dictionary?

您希望将apply其添加到您的列中以获取 dict,此时您可以使用 将其扩展为单独的列.apply(pd.Series),基于此 SO 答案:将 Pandas 列中的字典/列表拆分为单独的列

尝试以下

import pandas as pd
import ast

df = pd.read_csv('AnimeList.csv')
# turn the pd.Series of strings into a pd.Series of dicts
aired_dict = df['aired'].apply(ast.literal_eval)
# turn the pd.Series of dicts into a pd.Series of pd.Series objects
aired_df = aired_dict.apply(pd.Series)
# pandas automatically translates that into a pd.DataFrame
# concatenate the remainder of the dataframe with the new data
df_aired = pd.concat([df.drop(['aired'], axis=1), aired_df], axis=1)
# convert the date strings to datetime values
df_aired['aired_from'] = pd.to_datetime(df_aired['from'])
df_aired['aired_to'] = pd.to_datetime(df_aired['to'])

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用 Pandas 从 CSV 文件的日期列中提取特定的日期集?

使用 Pandas 从 CSV 文件中提取值

使用 pandas 从 csv 文件中提取数据时出现错误

如何使用终端从csv文件中提取列

如何在scala spark rdd中提取CSV文件的列

使用unix命令从csv文件中提取第4列

使用Python从CSV文件中提取列数据

从多个 csv 文件中提取数据并使用 pandas 准备一个数据帧

如何使用awk从我的CSV文件中提取第二列和第三列?

如何使用Pandas从GitHub读取CSV文件

如何使用 Pandas 修改特定的 csv 文件

如何使用 Pandas 正确读取 csv 文件?

使用 Python Pandas 更改 csv 的日期列

使用PowerShell从CSV文件中提取数据

如何使用從 HTML 文件導入的 Pandas 從數據集中提取特定列?

如何使用 Pandas 合并 CSV 文件中的多列?

如何使用Pandas在python的CSV文件中显示列?

如何使用 Pandas 编辑 .CSV 文件中的列

如何遍历 csv 行以使用 Pandas 从 URLS 中提取文本

从CSV文件的名称中提取日期

使用 Pandas 从 csv 文件中分解列

从 .csv 文件中的 Pandas 日期时间列中仅提取月份和年份(Python)

按日期排序并使用Pandas数据框从第二列中提取唯一值

如何使用Powershell从多个csv文件中提取一个特定的列(没有标题,说第2列)?

如何从pandas列中提取特定信息?

如何从 Pandas DataFrame 中提取子列?

如何从neste pandas系列中提取列

使用pandas从字典列中提取值

BASH-如何从CSV文件中的列中提取数据并将其放入数组中?