Python:从csv文件中提取值,并根据特定参数输出到单独的列表中

时间:2017-02-22 19:29:38

标签: python csv

我正在编写一个简短的脚本来处理一些csv数据。 我的数据看起来像这样:

Freq    res    loop
10000   10    1
100     11    1
10000   12    2
100     13    2

我需要提取每个频率的所有res值,并将它们放入单独的列表中。例如10000 10 12其中10000是频率,10和12是循环1和2的res值。

快速而肮脏的方法是按循环计数剪切列并将它们水平堆叠然后按行读取数据:

Freq    res    loop    Freq    res    loop
10000   10     1       10000   12     2
100     11     1       100     13     2

但是我觉得那种粗野的强迫它可能会变得凌乱。 我创建了一个字典key[(Freq, loop)] = res,以便我可以执行以下操作:

for i in np.arange(1, max(loop)+1,1):
    print(key[10000,i])

但我不知道如何循环频率并为每个频率创建一个单独的列表。

我还是Python的新手,所以任何输入都会受到赞赏。如果我错过了一个更简单的解决方案,请告诉我。谢谢。

1 个答案:

答案 0 :(得分:1)

你可能想看一下熊猫。

import pandas as pd
df = pandas.read_csv(fname)
df.groupby('Freq')