【问题标题】:Graphing in python using numpy使用 numpy 在 python 中绘图
【发布时间】:2018-01-29 08:04:13
【问题描述】:

我是 python 新手,所以我可能遗漏了一些明显的东西

但我想从 excel 中导入数据并绘制图表。在excel中有一列,每一行都有一个用逗号分隔的数字列表。我想从每个数组中提取第二个和第三个数字以用作 x 和 y。

我已将 excel 文件转换为 csv 文件。

fname = str("Raw1.csv") # store in data directory
data = np.loadtxt('../data/' + fname,
                delimiter=',',
                skiprows=6,
                usecols=(1,2,6,7,8,3,4,5)) 

x1 = data[:,[1]]
print x1
y1 = data[:,[2]]
print y1

但是当我检查我是否提取了正确的数据时,x1 显示第三个数字,y1 默认为零。

我不知道为什么会这样?

这是 csv 文件中的一些示例数据

"0, 57217.09, 51514.46, 58537.72, 44444.79, 0.00, 0.00, 0.00, 0.00, 0.016, 
0.472, 0.170, 14:22:39.438"
"1, 56912.86, 51240.30, 58259.08, 44179.38, 0.00, 0.00, 0.00, 0.00, 0.000, 
0.000, 0.000, 14:22:39.919"
"2, 58354.95, 52950.70, 59965.86, 45914.75, 0.00, 0.00, 0.00, 0.00, 0.000, 
0.000, 0.000, 14:22:39.920"

【问题讨论】:

  • 您能否提供 raw.csv 或至少一个示例?接缝你没有导入正确的数据。前定界符中的跳过是错字??
  • 这里是 Raw1.csv "0, 57217.09, 51514.46, 58537.72,......, 44444.79" "1, 56912.86, 51240.30, 58259.08,........ , 44179.38"
  • 嗯嗯在哪里?请编辑您的帖子并提供示例数据。谢谢

标签: python excel csv numpy graph


【解决方案1】:

使用np.shape()查找数据的维度,然后您可以清楚地看到您所犯的实际错误并根据需要从列表中提取数据。

【讨论】:

    【解决方案2】:

    来自 numpy 文档

    usecols : 要读取哪些列,0 是第一个。例如, usecols = (1,4,5) 将提取第 2、第 5 和第 6 列。默认值 None 会导致读取所有列。

    所以在你的数据中,你有第 2、3、7 等列,data[:,[1]] 实际上是第三个数字,data[:,[2]] 是第 7 个数字(是 0 吗?)

    【讨论】:

    • 啊,谢谢。第一个数字是整数,后面是浮点数,所以出现了这个错误:ValueError: could not convert string to float: "0
    • 问题不在于使用np.loadtxt 将整数转换为浮点数。错误在于您使用逗号"0 它告诉python该变量是字符串。你的 .csv 文件应该没有逗号
    • 还要注意skiprows 在做什么:跳过第一行;默认值:0。
    猜你喜欢
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    • 2021-11-23
    • 2019-08-09
    • 2016-06-06
    • 2013-08-27
    • 2021-05-05
    • 1970-01-01
    相关资源
    最近更新 更多