【问题标题】:python pandas dataframe from file来自文件的python pandas数据框
【发布时间】:2014-11-21 12:59:27
【问题描述】:

我想从一个文件创建一个数据框对象。该文件看起来与此类似

Gibberish Header1
Gibberish Header2
Gibberish Header3
Gibberish Header4 (etc)...
TAG THING_I_WANT_AS_COLUMN_NAME Column1
1.0  # I'll want this index as data 1 
1.2  # I'll want this index as data 2 
1.3  etc
TAG THING_I_WANT_AS_COLUMN_NAME Column2
1.1
1.1
1.7

我希望 DataFrame 看起来类似于:

       Column_1    Column_2 
data1  1.0         1.1
data2  1.2         1.1
data3  1.3         1.7

有没有办法做到这一点,而无需编写函数将其转换为可以直接写入 DataFrame 类的字典?我在想可能会重塑,但我不确定在我的情况下这将如何运作。我知道将它写入字典是一件容易的事情,但是这些文件可能非常大,因此它可能会大大减慢我的速度,甚至无法使用我的 RAM。

任何帮助,即使是正确方向的一点,将不胜感激。

谢谢!

【问题讨论】:

  • 不,您需要编写代码将其转换为 pandas 可以直接读取的某种格式(如 CSV)。
  • 预解析并持久化然后将其读入DataFrame - 无需将中间产品保存在内存中。

标签: python pandas reshape


【解决方案1】:

从头开始创建 pandas 数据框时,我通常会... 将熊猫导入为 pd

# create array for each column
col1 = [float(35*x) for x in xrange(10)]
col2 = [float(220*x) for x in xrange(10)]

dict = {'col1_name': col1, 'coll2_name': col2}
df = pd.DataFrame(dict)

正如其他人所说,您必须先解析数据。如果没有看到实际数据,很难准确地说出是什么。您可能会遍历文件中的每一行,忽略标题,一旦您点击带有列名的行并且东西设置了一个标志。然后,您可以开始将值附加到数组。一旦你得到了数组中的两组数字,像我在上面那样构建一个字典,你就会有一个数据框!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-26
    • 2016-06-06
    • 1970-01-01
    • 2017-05-02
    • 2018-05-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多