我的 df 中有一个日期列(对象),它看起来像下面的格式。
我需要转换此列或创建一个新的日期列,其中包含 .csv 格式的 5 位儒略日期YYDDD。不确定如何在 python/pandas 中执行此操作
日期:
2016-03-28
2016-03-11
2016-03-12
2016-03-23
2016-03-04
2016-03-02
2016-03-30
2016-03-30
2016-03-13
2016-03-13
Run Code Online (Sandbox Code Playgroud)
本质上,我想根据初始 df['date'] 列在我的 df 中创建一个新列,其中 df['date2'] 是所需的格式。
所以当 date1 = "2016-03-28" date2 = 16088
我在for循环中正确递增计数器变量时遇到问题.
我有一个名为的变量flag,我想创建一个num基于值中调用的新变量flag.
输入:
'flag'
FALSE
TRUE
TRUE
TRUE
FALSE
TRUE
FALSE
TRUE
TRUE
Run Code Online (Sandbox Code Playgroud)
期望的输出:
'flag' 'num'
FALSE 1
TRUE 1
TRUE 1
TRUE 1
FALSE 2
TRUE 2
FALSE 3
TRUE 3
TRUE 3
Run Code Online (Sandbox Code Playgroud)
目标是将num计数器设置为1并将该计数器保持为1,直到列中False出现另一个实例flag.这将一直持续到df结束.
我的代码:
def num(z):
i = 0
for x in range (0,len(z)):
if z['flg'] == False:
return i + 1
else:
return i
df['num']=df.apply(num, axis=1)
Run Code Online (Sandbox Code Playgroud)
我试过在很多地方增加I计数器,但没有运气......