【问题标题】:Analyzing single cells from Excel to Dataframe Pandas分析从 Excel 到 Dataframe Pandas 的单个单元格
【发布时间】:2015-11-19 16:38:32
【问题描述】:

所以我有一个 csv 文件的文件夹,我想遍历它以从中创建一个数据框。我已经能够迭代并创建以每个 csv 的名称作为索引的数据框,但我无法做的一件事是所有 csv 都有一个单元格 A2,上面写着“纬度:xxxxxx " 我想创建一个名为 latitude 的列,其中包含每个 csv 的所有这些不同的 lat 值。我该怎么做呢?

我有什么可以遍历 csv 文件:

for fn in os.listdir('C:\\Users\\joshs_000\\Desktop\\WindProject\\BayAreaData'):
    if fn.endswith(".csv"):
        df2 = pd.read_csv('C:\\Users\\joshs_000\\Desktop\\WindProject\\BayAreaData\\' + fn, skiprows = 3)
        df2 = df2['power (MW)']
        df1[fn[:5]] = df2

每个数据框都包含在单元格 A1 和 A2 中,单个单元格中的纬度和经度,下面是我复制的表格,因此是跳过。我也希望能够将 lat 和 lon 放入数据框中,但我不确定如何使用 Pandas 分析单个单元格。

【问题讨论】:

  • 您可以编辑问题以包含您迄今为止的尝试,以及一个小的输入样本和您的预期输出。这将有助于我们准确确定您想要实现的目标。

标签: python csv pandas dataframe


【解决方案1】:

我认为你不能用一个 pandas 命令解决这个问题。最简单的解决方案就是为经度/纬度数据创建一个单独的数据框。大致如下:

import csv

row_list = []
for fn in os.listdir('C:\\Users\\joshs_000\\Desktop\\WindProject\\BayAreaData'):
    if fn.endswith(".csv"):
        with open(fn, 'r', newline='') as f:
            reader = csv.reader(f, delimiter=',')
            row_list.append([fn] + next(reader))
df_location = pd.DataFrame(row_list, columns=['filename', 'longitude', 'latitude'])
df_location.set_index(['filename'])

这个数据框现在被索引到文件名,所以向原始数据框添加数据应该很容易。

【讨论】:

    猜你喜欢
    • 2021-11-14
    • 2016-01-06
    • 2018-04-22
    • 2018-03-26
    • 2019-09-03
    • 1970-01-01
    • 2018-09-11
    • 1970-01-01
    • 2018-04-22
    相关资源
    最近更新 更多