当前位置: 首页 > 知识库问答 >
问题:

使用Python将多个CSV导入HDF5

公孙茂学
2023-03-14

我试图导入多个CSV文件在一个特定的路径到数据集HDF5文件使用此代码:

import numpy as np
import h5py
import pandas as pd
import glob
yourpath = '/root/Desktop/mal/ex1'
all_files = glob.glob(yourpath + "/*.csv")
li = []
for filename in all_files:
df = pd.read_csv(filename,index_col=None, header=0)
li.append(df)

frame = pd.concat(li, axis=0, ignore_index=True)

hf = h5py.File('data.h5', 'w')
hf.create_dataset('dataset_1', data=frame)
hf.close()

但我有一个错误:

第15行,在帧=pd.concat(li,轴=0,ignore_index=True)文件/usr/本地/lib/python3.7/site-包/熊猫/核心/重塑/concat.py,第281行,在统一排序=排序,文件/usr/本地/lib/python3.7/site-包/熊猫/Core/reshape/concat.py",第329行,在初始化中提升ValueError(没有要连接的对象)ValueError:没有要连接的对象-

共有1个答案

穆宏胜
2023-03-14

尝试以以下方式压缩csv文件:

PATH = r"/...." # your Path
extension = 'csv'
os.chdir(PATH)
csv_list = glob.glob('*.{}'.format(extension))
print(csv_list)

# creates new df
df = pd.DataFrame()

for csv in csv_list:
    temp = pd.read_csv(csv)
    df = pd.concat([df, temp], ignore_index=True)
    
df.drop_duplicates(keep='first', inplace=True)

# .... here comes the rest of your code
 类似资料:
  • 问题内容: 我有一个大约有2000条记录的CSV文件。 每个记录都有一个字符串和一个类别: 我需要将此文件读入如下列表: 如何使用Python将CSV导入到我需要的列表中? 问题答案: 使用csv模块: 输出: 如果你需要元组: 输出: 旧的Python 2答案,也使用csv模块:

  • 问题内容: 更新 在我发布此问题之后的第二秒,由于对结果查询的语法突出显示,我看到了出了什么问题:该字符串未以闭合斜线开头。现在我将其更改为: 但是,这提出了一个新问题:为什么PDO对象没有为此向我吐出错误?手动执行查询肯定会返回一个错误,指出没有名为的字段,最后是逗号。为什么我没有收到任何错误?有任何想法吗? PS:关于解决我的问题的SO语法突出显示方面有什么想法吗?:-) 我将原始问题留作参考

  • 因此,我计划使用Jupyter笔记本(Python 3)进行一些数据分析,出于协作的原因,我想将数据存储在github存储库中,但是数据集是敏感的。 因此,我希望将数据(当前为.csv)作为加密文件存储在repo上,然后在运行时对其进行解密(我猜是使用密码提示)。 最好的方法是什么?

  • 问题内容: 我正在做“elasticsearch入门”教程。不幸的是,本教程没有介绍将数据库导入Elasticsearch的第一步。 我用谷歌搜索找到了解决方案,但不幸的是它无法正常工作。这是我要实现的目标和拥有的目标: 我有一个要导入的数据文件(简化了) 我想使用导入。经过互联网研究后,我得到以下配置: 我在指定文档类型时遇到了麻烦,因此一旦导入数据,便导航到http:// localhost:

  • 问题内容: 我有一个CSV文件,我想使用Python将此文件批量导入到sqlite3数据库中。该命令是“ .import .....”。但似乎不能这样工作。谁能给我一个在sqlite3中做事的例子吗?我正在使用Windows,以防万一。谢谢 问题答案:

  • 我试图将一个目录中的几个csv文件读入pandas,并将它们连接到一个大数据帧中,但出现以下错误: 这是我的密码 我不知道为什么它不起作用。我试图用chmod解决这个问题,但一切都变了