【发布时间】:2019-03-24 20:00:36
【问题描述】:
我有大量 .txt 文件要连接在一起,但它们本身缺少日期。
但是,日期是文件名,我想以某种方式提取并用作我的 Pandas DataFrames 上的标签 - 例如Apr 2009.txt。这将弥补文件本身缺少的实际日期。
有没有什么方法可以一次一个地在本地引入所有文件,并将文件名作为标签以按日期破坏整个 DataFrame 的每个部分?
我的伪代码是:
file = 'PATH\\FileName.txt'
openfile = open(file,'r')
new_line = []
def separateState(l):
for line in l:
if any(x in line for x in ['New York']):
new_line.append(line.split())
然后
def joinWords(n):
for listy in n:
operation on each list (listy)
df = pd.DataFrame(appended_data)
df.to_csv('FileName.csv')
每个文件都是嵌套列表时的 .txt(通过上面的这些函数按城市解析)。
输入看起来像:
[['CityName1', 'number1'.....'number2'....],.......many other lists of similar types]
我想要实现的输出是:
Date | City | UNIT1 | UNIT2 |.....
FileName (Apr 2009) | CityName1 | number01 | number11 |....
<blank til next file name> | CityName2 | number02 | number12 |....
.
.
.
.
基本上我想在每次摄入开始时通过 FileName 分割每个 df。
【问题讨论】:
-
有没有办法?是的。但是仅使用您提供的信息并且没有minimal reproducible example 很难编写一些代码
-
在上面添加了我的功能!
-
仍然有点困惑 - 您能否提供与您的输入相对应的输出(简化)版本,以便我们看到您想要实现的目标?
-
我已经添加了所需的输出。告诉我!
-
您是否将数据合并到数据框中只是为了将其保存为 csv?
标签: python python-3.x pandas list dataframe