gpt4 book ai didi

python - 我如何根据零数据的月份计算天数?

转载 作者:行者123 更新时间:2023-11-28 19:11:17 26 4
gpt4 key购买 nike

我正在编写一个脚本,我在其中读取了一个包含多个列和行的 csv。我需要脚本对单行的每一列中的值进行总计,并返回该行的哪些列的值为零。这是数据的示例,还有其他几列,但这些是我的问题感兴趣的列:

    JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC
0 0 5 5 0 5 5 5 5 0 0 0

这是我目前所拥有的:

    import pandas as pd
import os

os.chdir('C:\\users\\vroland\\desktop\\RR_WMD\\WUdata')

fout=open("WUinput.csv","a")
#read water use file
df=pd.read_csv("WUtest.csv")
#Header & months with zero values
cols=df.columns
#Boolean array of columns with zero values
bt=df.apply(lambda x: x==0)
#List months with zero values
zar=bt.apply(lambda x:list(cols[x.values]),axis=1)

我已经尝试了多种方法的组合,包括 if 语句,但我一直收到一条错误消息,指出我的条件语句不明确,所以我正在尝试另一种方法。所以这就是我现在必须与上面的代码块一起使用的内容:

   a=30
b=31
c=28
num_days=pd.DataFrame({'JAN':[b],'FEB':[c],'MAR':[b],'APR':[a],'MAY':[b],
'JUN':[a],'JUL':[b],'AUG':[b],'SEP':[a],'OCT':[b],
'NOV':[a],'DEC':[b]})

我的想法是使用 zar 中返回的值在我的数据框 num_days 中查找适当的日期值。返回此值并计算值为零的总天数。

最佳答案

好吧,我会去掉“fout”这一行。您似乎没有写入该文件,并且不需要打开它即可使用 pandas 的“read_csv”功能。然后你可以遍历每一行,找出什么是零,什么不是

returnArray = []
i=0
while i < len(df.values):
j=14 #since user only cares about column 14-26
while j < len(df.values[i]):
if df.values[i][j] == 0:
returnArray.append([i,j])
j=j+1
i=i+1

关于python - 我如何根据零数据的月份计算天数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39796519/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com