身体状况评分

2024-10-04 05:24:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用Python计算一头牛的身体状况得分。你知道吗

以下是我的数据库中的数据:

TZN123456789876 5.000   5.000   2016-10-05 00:00:00 2016-10-05
TZN000192812823 4.000   3.000   2017-02-28 00:00:00 2016-11-23
TZN000000000000 3.000   3.000   2017-03-01 00:00:00 2016-10-19
TZN000192812832 4.000   4.000   2017-03-02 00:00:00 2017-01-11
TZN000192799934 4.000   4.000   2017-03-07 00:00:00 2017-02-25
TZN000192812431 4.000   4.000   2017-03-08 00:00:00 2017-03-08
TZN000192800126 4.000   4.500   2017-03-21 00:00:00 2017-03-01
TZN000192812696 4.000   3.000   2017-03-22 00:00:00 2016-12-13
TZN000192812343 4.000   4.000   2017-03-23 00:00:00 2017-06-23
TZN000192809748 3.000   1.000   2017-03-24 00:00:00 2016-11-30

我想用以下公式来计算身体状况得分:

result = ((bodycond2 - bodyscore) * 100)/bodycond2

数据是不断变化的,我想使用python来获得每月和每年的结果。你知道吗


Tags: 数据数据库公式身体状况tzn000192800126tzn123456789876tzn000192799934tzn000192812343
1条回答
网友
1楼 · 发布于 2024-10-04 05:24:23

快速创建一个脚本,以向您显示所请求内容的一般上下文,尽管您尚未指定将哪个列分配给哪个变量:

我为你的数据创建了一个csv,名为“分数.csv“:”

TZN123456789876,5.000,5.000,2016-10-05,00:00:00,2016-10-05
TZN000192812823,4.000,3.000,2017-02-28,00:00:00,2016-11-23
TZN000000000000,3.000,3.000,2017-03-01,00:00:00,2016-10-19
TZN000192812832,4.000,4.000,2017-03-02,00:00:00,2017-01-11
TZN000192799934,4.000,4.000,2017-03-07,00:00:00,2017-02-25
TZN000192812431,4.000,4.000,2017-03-08,00:00:00,2017-03-08
TZN000192800126,4.000,4.500,2017-03-21,00:00:00,2017-03-01
TZN000192812696,4.000,3.000,2017-03-22,00:00:00,2016-12-13
TZN000192812343,4.000,4.000,2017-03-23,00:00:00,2017-06-23
TZN000192809748,3.000,1.000,2017-03-24,00:00:00,2016-11-30

下面是简单的代码:

import csv

with open('scores.csv') as csvfile:
    readCSV = csv.reader(csvfile, delimiter=',')
    for row in readCSV:
        result = ((float(row[2]) - float(row[1])) * 100)/float(row[2])
        print(row[0], result)

不幸的是,这些数字在输出上看起来并不正确:

TZN123456789876 0.0
TZN000192812823 -33.333333333333336
TZN000000000000 0.0
TZN000192812832 0.0
TZN000192799934 0.0
TZN000192812431 0.0
TZN000192800126 11.11111111111111
TZN000192812696 -33.333333333333336
TZN000192812343 0.0
TZN000192809748 -200.0

请使用此答案作为参考,以了解如何读取csv和处理数据只是一行一行。你知道吗

你能更具体地回答你的问题吗?这可以相应地调整吗?Minimal, Complete and Verifiable example guidelines

相关问题 更多 >