python - 'float' 对象不可下标。循环并保存到 csv 错误
问题描述
我想遍历一些列表对象,并将结果保存到.csv
文件中。
当我运行我的代码时:
for i in dfxz:
meanVal = np.mean(dfxz[i])
varianceVal = np.var(dfxz[i])
skewVal = skew(dfxz[i])
kurtVal = kurtosis(dfxz[i])
try:
csv = open('tabel.csv', 'a')
csv.write(
str(meanVal) + ',' + str(varianceVal) + ',' + str(skewVal[0]) + ',' + str(kurtVal[0]) + ',' + '1' + '\n'
)
except IOError as error:
print('failed to print', error)
csv.close()
我收到以下错误消息:
TypeError Traceback (most recent call last) <ipython-input-12-4c672d5a979c> in <module>
8 csv = open('tabel.csv', 'a')
9 csv.write(
---> 10 str(meanVal) + ',' + str(varianceVal) + ',' + str(skewVal[0]) + ',' + str(kurtVal[0]) + ',' + '1' + '\n'
11 )
12 except IOError as error:
TypeError: 'float' object is not subscriptable
我已经将我的值转换pandas.DataFrame
为int
from float
,但无济于事。
我做错了什么?
解决方案
这里 :
meanVal = np.mean(dfxz[i])
varianceVal = np.var(dfxz[i])
skewVal = skew(dfxz[i])
kurtVal = kurtosis(dfxz[i])
您从列表中提取值,在这里:
... str(skewVal[0]) ...
和这里:
... str(kurtVal[0]) ...
您尝试从 value 中提取位置0
中的值,因此您收到上述异常。
干杯。
推荐阅读
- solr - 如何在 solr 字段中索引多维数组
- variables - 如何将闪亮应用程序中的绘图(renderPlot)作为参数传递给 R Markdown?
- optimization - 在 Neo4j 中选择哪种硬件
- excel - 多个工作表更改公式 - 在下拉列表中选择某些条件时的多个操作
- laravel - 我不确定我的 Vue 代码是否高效
- amazon-web-services - PySpark JVM 无法加载包
- kubernetes - Rancher环境和K8S集群有什么关系?Rancher主机和K8S节点?
- xml - 如何使用 XSLT1.0 合并两个 xml 文件
- swift - 如何更新此 Hashable.hashValue 以符合新要求。?
- python - 如何以 Pythonic 方式向上移动 n 个目录?