Python 如何保存数据框中的文件名,然后从中提取一些信息
我在一个路径中有将近1000000个甚至更多的文件。 我的最终目标是从文件名中提取一些信息。 到目前为止,我已将文件名保存在列表中 文件名中包含哪些信息 文件名的格式如下:Python 如何保存数据框中的文件名,然后从中提取一些信息,python,pandas,numpy,readfile,Python,Pandas,Numpy,Readfile,我在一个路径中有将近1000000个甚至更多的文件。 我的最终目标是从文件名中提取一些信息。 到目前为止,我已将文件名保存在列表中 文件名中包含哪些信息 文件名的格式如下: 09066271_142468576_1_Haha_-Haha-haha_2016-10-07_haha-false_haha2427.txt 所有的哈哈都是其他不同的文本,这并不重要 我想从名称中提取09066271和2016-10-07,并保存在数据框中。第一个数字总是8个字符 到目前为止,我已将整个文本文件名保存在列
09066271_142468576_1_Haha_-Haha-haha_2016-10-07_haha-false_haha2427.txt
所有的哈哈都是其他不同的文本,这并不重要
我想从名称中提取09066271
和2016-10-07
,并保存在数据框中。第一个数字总是8个字符
到目前为止,我已将整个文本文件名保存在列表中:
path = 'path to the saved txt files/fldr'
file_list = os.listdir(path)
首先,我想将整个txt文件名保存在dataframe中,然后对它们执行这些操作。看来我得先读给numpy听,然后再把它改成熊猫读物。不过我现在不知道以前会怎样重塑数字
df = pd.DataFrame(np.array(file_list).reshape(,))
如果您能告诉我您的想法以及有效的方法,我将不胜感激:)您可以使用
os
列出所有文件。然后只需构造一个DataFrame
,并使用string方法获取所需的部分文件名
import pandas as pd
import os
path = 'path to the saved txt files/fldr'
file_list = os.listdir(path)
df = pd.DataFrame(file_list, columns=['file_name'])
df['data'] = df.file_name.str[0:8]
df['date'] = df.file_name.str.extract('(\d{4}-\d{2}-\d{2})', expand=True)
您可能根本不需要数据帧,只需要一个正则表达式
file_name data date
0 09066271_142468576_1_Haha_-Haha-haha_2016-10-0... 09066271 2016-10-07
1 09014271_142468576_1_Haha_-Haha-haha_2013-02-1... 09014271 2013-02-18