繁体   English   中英

分析来自 Pandas 中多个 .txt 文件的数据

[英]Analyzing data from multiple .txt files in pandas

我有 1000 多个文本文件。 每个都有日期(我制作了索引)和股票价格(第 0 列)。 我创建了代码来查找单个文件的价格的移动平均线,以及价格和移动平均线之间的滚动差异。 我想为每个文件创建代码来执行此操作。 我必须成组上传它们,因为一次上传它们会占用太多内存。

我想我将不得不使用 for 循环来遍历文件并找到每个文件的指标。 但是我该怎么做呢? 如何将所有文件上传到一个组中,比如说,将它们分组到一个变量中,然后创建一个循环来查找每个文件的移动平均线和价格差异?

编辑:我正在使用 numpy、pandas 和 matplotlib。 我还希望能够找到与移动平均线相差最大的股票。

任何帮助将不胜感激

如果您只想遍历给定文件夹中的所有输入文件,您可能需要尝试os.listdir()来获取文件名列表,然后您可以按顺序处理这些文件名。 如果您的文件分布在文件夹层中,您可以使用os.walk()来遍历目录。 您可以在此处找到有关这些方法的信息: https : //docs.python.org/3/library/os.html

这 1000 个文件有多大? 如果它们每个都有几 MB,只是猜测,将所有文件合并到一个文件中,您可以对它做任何想做的事情。

import pandas as pd
import csv
import glob
import os

#os.chdir("C:\\Users\\Excel\\Desktop\\test\\")
results = pd.DataFrame([])
filelist = glob.glob("C:\\your_path\\*.csv")
#dfList=[]
for filename in filelist:
    print(filename)  
    namedf = pd.read_csv(filename, skiprows=0, index_col=0)
    results = results.append(namedf)

results.to_csv('C:\\your_path\\CombinedFile.csv')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM