我收到错误:
TypeError: scatter() got an unexpected keyword argument 'trendline_options'
Run Code Online (Sandbox Code Playgroud)
当尝试使用plotlyexpress调整最低趋势线的平滑度时。
这是我的图表代码:
fig = px.scatter(dfg, x="Yr_Mnth", y="Episode_Count", color = "Target",
labels={"Episode_Count": tally + " per Shift",
"Target":"Target",
"Yr_Mnth": "Date" },
trendline='lowess',trendline_options= dict(frac=0.1), title="Aggregate Behavior Data: " + patient + " - " + today)
fig.update_xaxes(tickangle=45,)
fig.update_layout(template = 'plotly_white',hovermode="x unified")
Run Code Online (Sandbox Code Playgroud)
数据集(dfg):
Yr_Mnth Target Episode_Count
2020-08-01 Aggression 0.09
2020-08-01 Elopement 0.00
2020-08-01 Self-injury 0.97
2020-09-01 Aggression 0.65
2020-09-01 Elopement 0.00
2020-09-01 Self-injury 1.58
2020-10-01 Aggression 0.24
2020-10-01 Elopement 0.00
2020-10-01 Self-injury 0.75
2020-11-01 …Run Code Online (Sandbox Code Playgroud) 我有一个随机事件(有时是不常见事件)的数据集,我想将其算作每周的总和。由于随机性,它们不是线性的,因此我迄今为止尝试过的其他示例不适用。
数据类似于这样:
df_date <- data.frame( Name = c("Jim","Jim","Jim","Jim","Jim","Jim","Jim","Jim","Jim","Jim",
"Sue","Sue","Sue","Sue","Sue","Sue","Sue","Sue","Sue","Sue"),
Dates = c("2010-1-1", "2010-1-2", "2010-01-5","2010-01-17","2010-01-20",
"2010-01-29","2010-02-6","2010-02-9","2010-02-16","2010-02-28",
"2010-1-1", "2010-1-2", "2010-01-5","2010-01-17","2010-01-20",
"2010-01-29","2010-02-6","2010-02-9","2010-02-16","2010-02-28"),
Event = c(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1) )
Run Code Online (Sandbox Code Playgroud)
我想做的是创建一个新表,其中包含日历年中每周事件的总和。
在这种情况下产生这样的东西:
Name Week Events
Jim 1 3
Sue 1 3
Jim 2 0
Sue x ... x
and so on...
Run Code Online (Sandbox Code Playgroud) 为了可视化,我需要按每个 x 唯一值对长格式 DataFrame 进行切片。我的实际数据集有 20 个个体的约 90 个变量,因此我想分成 9 个单独的 df,其中每个变量包含所有 20 个个体的条目。
我创建了这个简单的示例来帮助解释:
df = pd.DataFrame({'ID':[1,1,1,2,2,2,3,3,3,4,4,4],
'Period':[1,2,3,1,2,3,1,2,3,1,2,3,],
'Food':['Ham','Ham','Ham','Cheese','Cheese','Cheese','Egg','Egg','Egg','Bacon','Bacon','Bacon',]})
df
''' ******* PSUEDOCODE *******
df1 = unique entries [:2]
df2 = unique entries [2:4] '''
# desired outcome:
df1 = pd.DataFrame({'ID':[1,1,1,2,2,2,],
'Period':[1,2,3,1,2,3,],
'Food':['Ham','Ham','Ham','Cheese','Cheese','Cheese',]})
df2 = pd.DataFrame({'ID':[3,3,3,4,4,4],
'Period':[1,2,3,1,2,3,],
'Food':['Egg','Egg','Egg','Bacon','Bacon','Bacon',]})
print(df1)
print(df2)
Run Code Online (Sandbox Code Playgroud)
在这种情况下,DataFrame 将在列中每 2 组唯一条目的末尾进行拆分,df['Food']以创建df1和df2。最好的情况是一个循环,为每个 x 个唯一条目创建一个新的 DataFrame。由于缺乏我能找到的信息,不幸的是我很难为此编写好的伪代码。