小编ves*_*and的帖子

Pandas:如何使用 df.to_dict() 轻松共享示例数据帧?

这个问题早些时候被标记为如何制作好的可重复的熊猫示例的副本。对于任何寻求制作此类可重复数据样本的人来说,该贡献无疑应该是首选帖子,而这篇文章旨在阐明一种非常实用且有效的方法,将给定的数据样本包含df.to_dict()在与df=pd.DataFrame(<dict>). How to make good reproducible pandas examples 中的问题和答案都没有明确涵盖这一点。Usingdf.to_dict()也可以很好df.to_clipboard()地与 结合使用,在文章How to provide a reproducible copy of your DataFrame with to_clipboard()中进行了简明扼要的介绍


尽管有关于如何提出好问题的清晰简明的指导以及如何创建最小的、可重现的示例,许多人似乎只是忽略了在他们的问题中包含可重现的数据样本。那么,当简单pd.DataFrame(np.random.random(size=(5, 5)))还不够时,有什么实用且简单的方法来重现数据样本呢?例如,您如何使用df.to_dict()并将输出包含在问题中?

python pandas plotly

12
推荐指数
1
解决办法
826
查看次数

Python和Pandas:将列组合成日期

在我dataframe的时间是3列分隔:year,month,day,就像这样: 在此输入图像描述

我怎样才能将它们转换成date,所以我可以进行时间序列分析?

我可以做这个:

df.apply(lambda x:'%s %s %s' % (x['year'],x['month'], x['day']),axis=1)
Run Code Online (Sandbox Code Playgroud)

这使:

1095       1954 1 1
1096       1954 1 2
1097       1954 1 3
1098       1954 1 4
1099       1954 1 5
1100       1954 1 6
1101       1954 1 7
1102       1954 1 8
1103       1954 1 9
1104      1954 1 10
1105      1954 1 11
1106      1954 1 12
1107      1954 1 13
Run Code Online (Sandbox Code Playgroud)

但接下来呢?

编辑: 这是我最终得到的:

from datetime import datetime …
Run Code Online (Sandbox Code Playgroud)

python pandas

11
推荐指数
1
解决办法
7000
查看次数

融化pandas数据框,具有多个变量名和多个值名

如何使用多个变量名称和值来融合pandas数据框?我有以下数据框,在for循环中更改其形状.在其中一个for循环迭代中,它看起来像这样:

ID  Cat    Class_A   Class_B     Prob_A     Prob_B
1   Veg      1        2          0.9         0.1
2   Veg      1        2          0.8         0.2
3   Meat     1        2          0.6         0.4
4   Meat     1        2          0.3         0.7
5   Veg      1        2          0.2         0.8
Run Code Online (Sandbox Code Playgroud)

我需要以这样的方式融化它:

ID  Cat    Class     Prob    
1   Veg      1       0.9       
1   Veg      2       0.1
2   Veg      1       0.8        
2   Veg      2       0.2
3   Meat     1       0.6         
3   Meat     2       0.4
4   Meat     1       0.3         
4   Meat     2       0.7
5   Veg      1       0.2         
5   Veg …
Run Code Online (Sandbox Code Playgroud)

python melt pandas

11
推荐指数
1
解决办法
2055
查看次数

Plotly 热图中颜色条的标题

这是我的代码:

fig = go.Figure(
    data=go.Heatmap(z=z_values, y=[str(x) for x in params_1], x=[str(x) for x in params_2]), 
    layout=go.Layout(
        title="Analysis results",
        xaxis=dict(title='Diameter'),
        yaxis=dict(title='Max Distance')
    ),
)
fig.show()
Run Code Online (Sandbox Code Playgroud)

它生成一个 2D 热图(下面的代码段),但我想为颜色条添加一个标题:

在此处输入图片说明

不幸的是,情节示例也没有颜色栏标题。我试图将颜色栏属性包含在“标记”中,但这会引发错误。我怎么能这样做呢?

python plotly plotly-python

11
推荐指数
3
解决办法
5160
查看次数

Plotly/Dash 以流畅的动画显示实时数据

我们正在尝试在 plotly-dash 中生成一个实时仪表板,在生成时显示实时数据。我们通常遵循此处的指导(https://dash.plotly.com/live-updates)。

我们有一个回调,它大约每秒从源收集一大块新数据点,然后将数据附加到图形中。

当我们这样做时,对图形的更新是断断续续的,因为我们每秒都在回调上生成一个新的图形对象。我们希望图形流畅地流动,即使这意味着我们比实时数据落后一两秒。

我们正在研究动画(https://plotly.com/python/animations/),但尚不清楚我们如何将动画应用于附加到图形的实时数据流。

python plotly plotly-dash plotly-python

11
推荐指数
2
解决办法
8816
查看次数

Plotly:如何用新数据更新/重绘绘图表达图形?

在调试或计算量大的循环期间,我想看看我的数据处理如何演变(例如在线图或图像中)。

plt.cla()在 matplotlib 中,代码可以使用然后plt.draw()或重绘/更新图形plt.pause(0.001),以便我可以实时或在调试时跟踪计算进度。我如何在情节表达(或情节)中做到这一点?

python plot redraw plotly plotly-express

11
推荐指数
1
解决办法
2万
查看次数

Plotly:如何使用plotlyexpress设置多条迹线的标记符号形状?

我一直在尝试更改散点图中的标记形状,但我似乎找不到正确的选项。绘图文档涵盖了大小和不透明度,但没有涵盖标记形状。这是我的示例代码-


import pandas as pd
import plotly.express as px

d = {'Date': ['01/01/1990','01/01/1990','01/01/1990','01/01/1990',
             '01/01/2000','01/01/2000','01/01/2000','01/01/2000',
             '01/01/2010','01/01/2010','01/01/2010','01/01/2010',
             '01/01/2020','01/01/2020','01/01/2020','01/01/2020'
             ]}
df = pd.DataFrame(data=d)

df['Metric1']=[100, 110, 120, 130,
 200, 210, 220, 230,
 300, 310, 320, 330,
 400, 410, 420, 430]
df['Marker']=[1,2,3,4,1,2,3,4,1,2,3,4,1,2,3,4]
df['Color']=['a', 'b', 'c', 'd',
 'a', 'b', 'c', 'd',
 'a', 'b', 'c', 'd',
 'a', 'b', 'c', 'd']
fig = px.scatter(df, x='Date', y='Metric1', color = 'Color', hover_data = ["Color", "Marker"])
fig.show()
Run Code Online (Sandbox Code Playgroud)

是否可以实现我想要用 Plotly 散点图做的事情?我尝试遵循此论坛中的讨论 - https://community.plotly.com/t/getting- Different-markers-shapes/9944 但我是很难将其与我的问题联系起来我正在使用 Python 3.8 和 Plotly 4.11.0

python plotly plotly-python

11
推荐指数
1
解决办法
4万
查看次数

Plotly:如何更改绘图表达散点图的配色方案?

我正在尝试与plotly,特别是ploty express,构建一些可视化。

我正在构建的一件事是散点图

我在下面有一些代码,它产生了一个很好的散点图:

import plotly.graph_objs as go, pandas as pd, plotly.express as px
df = pd.read_csv('iris.csv')
fig = px.scatter(df, x='sepal_length', y='sepal_width',
              color='species', marker_colorscale=px.colors.sequential.Viridis)
fig.show()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

但是,我想尝试更改配色方案,即为每个物种呈现的颜色。

我读过了:

但是不能让颜色改变。

试:

fig = px.scatter(df, x='sepal_length', y='sepal_width',
              color='species', marker_colorscale=px.colors.sequential.Viridis)
Run Code Online (Sandbox Code Playgroud)

产量:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-6-78a9d58dce23> in <module>
      2 # https://plotly.com/python/line-and-scatter/
      3 fig = px.scatter(df, x='sepal_length', y='sepal_width',
----> 4               color='species', marker_colorscale=px.colors.sequential.Viridis)
      5 fig.show()

TypeError: scatter() got an unexpected keyword argument 'marker_colorscale'
Run Code Online (Sandbox Code Playgroud)

试: …

python visualization data-visualization plotly

10
推荐指数
2
解决办法
2万
查看次数

Plotly:如何使用 plotly express 在辅助 y 轴上绘图

我如何利用 plotly.express 在一个 Pandas 数据框中的两个 yaxis 上绘制多条线?

我发现这对于绘制包含特定子字符串的所有列非常有用:

    fig = px.line(df, y=df.filter(regex="Linear").columns, render_mode="webgl")
Run Code Online (Sandbox Code Playgroud)

因为我不想遍历所有过滤的列并使用以下内容:

    fig.add_trace(go.Scattergl(x=df["Time"], y=df["Linear-"]))
Run Code Online (Sandbox Code Playgroud)

在每次迭代中。

python express plotly yaxis

10
推荐指数
1
解决办法
8090
查看次数

Plotly:如何绘制具有共享 x 轴的多条线?

我希望在同一画布内有一个多线图,与相同的 x 轴相连,如图所示

在此输入图像描述

使用子图并不能达到预期的目的。

import plotly.express as px
from plotly.subplots import make_subplots
import plotly.graph_objects as go

fig = make_subplots(rows=2, shared_xaxes=True,vertical_spacing=0.1)
fig.add_scatter(y=[2, 1, 3], row=1, col=1)
fig.add_scatter(y=[1, 3, 2], row=2, col=1)
fig.show()
Run Code Online (Sandbox Code Playgroud)

我可以知道如何做到这一点吗?如果有人能指出好的阅读材料,我将不胜感激

python plotly plotly-dash

10
推荐指数
1
解决办法
2万
查看次数