无法将字符串转换为浮点数
我刚开始学习Python,只是想用它来分析一些生物数据。
请帮我解决下面的错误,
无法将字符串转换为浮点数
我正在尝试绘制(时间,距离)的图表。
这里有一些示例数据:
Nematode No. 1 1 2 2
No. of jumps Time (sec) Distance (mm) Time Distance
1 0.195781141 0.893988392 1.25388 0.56569
2 2.386623538 1.073359412 3.5848484 1.55656
3 2.915538343 1.227371636 4.284848 2.34454545
4 4.993603286 0.653631116 6.4545454 3.65445
5 8.002735854 0.986036142 2.35554 0.2548545
6 10.84267517 0.939671599 4.245454 0.5484848
我的代码(还在写)
from mmap import mmap,ACCESS_READ
from xlrd import open_workbook
from pylab import *
from xlrd import open_workbook,XL_CELL_TEXT
import csv
from scipy import stats
values = csv.reader(open('simple.csv', 'rb'), delimiter=',',skipinitialspace=True)
for column in values:
print column[1],column[2]
Time = column[1]
Distance = column[2]
plot(Time,Distance)
show()
1 个回答
2
import numpy as np
import matplotlib.pyplot as plt
x, y = np.loadtxt("simple.csv", skiprows=1, unpack=True)
plt.plot(x, y)
plt.show()
第一行是你的列名,这些列名本身不是数字,所以不能转换成浮点数。在绘制数据时,你应该跳过第一行。
对于更新后的数据:跳过前两行的标题,然后绘制第二列和第三列的数据:
x, y = np.loadtxt("simple.csv", skiprows=2, usecols=[1, 2], unpack=True)