【问题标题】:invalid literal for int() with base 10: 'NaT'基数为 10 的 int() 的无效文字:'NaT'
【发布时间】:2021-04-21 11:28:40
【问题描述】:

我正在努力改变用户对某些 YouTube 视频的看法。因此,我为每个用户提供了一个 csv 文件,其中存储了他的 cmets、极性和发布每个评论的日期。任务是计算阿尔法,它是指在一段时间内改变意见的平均值。但是我遇到了一个问题。 下面是我的脚本

from datetime import date, timedelta
def parse(mydate):
d,m,y=map(int,mydate.split('-'))
return date(d,m,y)

path = r'C:/Users/dell/project/script/base v2'
filenames = glob.glob(path + "/*.csv")
nfile=len(filenames)
Alphaa=[]
for k in range(0,nfile):
pd1=pd.read_csv(filenames[k])
dfa=[]
for i in range(len(pd1)-1):
 date1=pd.to_datetime(pd1['publishedAt'][i:i+1])
 date2=pd.to_datetime(pd1['publishedAt'][i+1:i+2])

 date11=date1.to_string(index = False)
 date21=date2.to_string(index = False)
 date1=str(pd.DataFrame(pd1['publishedAt'][i:i+1]))
 date2=str(pd.DataFrame(pd1['publishedAt'][i+1:i+2]))
 duration=abs((parse(date21)-parse(date11)).days)

 p1=pd1['polarity'][i]
 p2=pd1['polarity'][i+1]
 diff=p2-p1
 if diff == 0:
       
   alph="NULL"
   UserOpinion="NULL"
   
 else:
     
   alph= duration/diff
   UserOpinion=alph*p1
   
 dfa.append(alph)
Alphaa.append(dfa)

这是回溯错误

ValueError                                Traceback (most recent call last)
<ipython-input-9-9704e3a864cf> in <module>
 54      date1=str(pd.DataFrame(pd1['publishedAt'][i:i+1]))
 55      date2=str(pd.DataFrame(pd1['publishedAt'][i+1:i+2]))
---> 56      duration=abs((parse(date21)-parse(date11)).days)
 57 
 58      p1=pd1['polarity'][i]

<ipython-input-9-9704e3a864cf> in parse(mydate)
 36 from datetime import date, timedelta
 37 def parse(mydate):
---> 38     d,m,y=map(int,mydate.split('-'))
 39     return date(d,m,y)
 40 

ValueError: invalid literal for int() with base 10: 'NaT'

我尝试将结果的形式更改为浮点数,但它不起作用。请问有什么帮助吗?

【问题讨论】:

  • 您是否尝试检查mydate 的值?发生错误对您有意义吗?当值为NaT 时,您认为转换后应该产生什么整数?为什么?

标签: python datetime youtube-data-api invalidation


【解决方案1】:

int() 方法采用整数文字,例如 int('36')。在这里,您将“Nat”传递给 int(),因此会发生错误。 您必须在强制转换之前检查 mydate 的值。

【讨论】:

    猜你喜欢
    • 2013-05-31
    • 2018-03-13
    • 1970-01-01
    • 2021-06-25
    • 2019-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-06
    相关资源
    最近更新 更多