pandas Google Colab,遍历Google驱动器文件夹,将文件夹中的每个CSV文件读入 Dataframe ,然后附加 Dataframe

b4qexyjb  于 2023-01-19  发布在  Go
关注(0)|答案(1)|浏览(132)

我正在使用Google Colab
我有一个CSV文件的文件夹在谷歌驱动器目录'/content/drive/MyDrive/Colab Notebooks/Stocks CSVs/Stocks/'
我想循环遍历此文件夹,将每个CSV读取到一个数据框,在此数据框中附加来自pandas_ta library的技术指标,然后将附加的数据框导出到路径为'/content/drive/MyDrive/Colab Notebooks/Stocks CSVs/Stocks/'的另一个google drive文件夹
使用下面的代码时,我收到以下错误:未找到文件错误:[Errno 2]没有这样的文件或目录:'138SL.csv的副本'
我如何修复此代码,请记住,我必须使用谷歌colab,因为我正在使用工作笔记本电脑,不允许下载文本编辑器,如vs代码。
下面的代码:

def TAfunction(data):
  stock_df = pd.read_csv(data)
  CustomStrategy = ta.Strategy(
    name="RSI Strat",
    description = "RSI",
    ta=[
        {"kind":"rsi"},
        {"kind":"bbands", "length": 20},
        {"kind":"macd", "fast": 8, "slow":21},]
)
stock_df.ta.strategy(CustomStrategy)
stock_df.to_csv(data, encoding = 'utf-8-sig')
files.download(data) 

test_dir = '/content/drive/MyDrive/Colab Notebooks/Stocks CSVs/UpdatedStocks/'

for file in os.listdir(test_dir):
  if file.endswith(".csv"):
    TA_function(file)
dtcbnfnu

dtcbnfnu1#

您需要将CSV文件的完整路径传递给TAfunction(),因为脚本的工作目录与文件存储目录不同。只需修改代码末尾,将test_dirfile连接起来即可:

test_dir = '/content/drive/MyDrive/Colab Notebooks/Stocks CSVs/UpdatedStocks/'

for file in os.listdir(test_dir):
    if file.endswith(".csv"):
        TAfunction(test_dir + file)

相关问题