小编Liv*_*neM的帖子

如果 Dash 应用程序因导入的大数据而变慢,如何使 Dash 应用程序运行得更快

我正在使用 dash 应用程序调用包含 351 列的大约 250,000 个值的大型数据集,以便我可以显示它。然而,它需要很长时间才能运行,我认为这是因为我从一个不同的应用程序调用数据,我用来收集名为 REDCap 的数据。现在我想知道是否有更好的方法让我的应用程序运行得更快,即使数据来自不同的应用程序。请参阅下面的代码:

import dash
import dash_core_components as dcc
import dash_html_components as html
import pandas as pd
from redcap import Project
import pandas as pd

#redcap api and key
api_url = "enter link"
api_key = "enter key"
project = Project(api_url, api_key)

#call data from redcap
def data():
    df = project.export_records(format="df", df_kwargs={"index_col": project.field_names[1]})
    return df

df = data()


#generate table
def generate_table(dataframe, max_rows=10):
    return html.Table(
        # Header
        [html.Tr([html.Th(col) for col in dataframe.columns])] +

        # Body …
Run Code Online (Sandbox Code Playgroud)

python pandas plotly-dash

6
推荐指数
1
解决办法
4304
查看次数

从数据框中选择行,并包括另一列python

我是python的新手,如何从数据框中选择以_old结尾并包含 B列作为最终输出的?这是我的数据框:

import pandas as pd
import numpy as np
df1 = pd.DataFrame({'A': 'foo bar foo bar foo bar foo foo'.split(),
                   'B': 'james weker john mark jane der liv vam'.split(),
                   'C_old': np.arange(8), 'D_old': np.arange(8) * 2})
print(df1)
Run Code Online (Sandbox Code Playgroud)

我已经尝试过只选择以_old 结尾的列,但是我要在输出中包含B列的内容

df1[df1.columns[pd.Series(df1.columns).str.endswith('_old')]]
Run Code Online (Sandbox Code Playgroud)

我的预期输出应如下所示

import pandas as pd
import numpy as np
df1 = pd.DataFrame({
                   'B': 'james weker john mark jane der liv vam'.split(),
                   'C_old': np.arange(8), 'D_old': np.arange(8) * 2})
print(df1)
Run Code Online (Sandbox Code Playgroud)

python numpy dataframe pandas

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

在seaborn中将标签添加为百分比而不是分组条形图上的计数

我有一个分类数据集,我正在使用 seaborn 绘制条形图。但是,我无法在百分比值的条形顶部添加标签。数据集如下所示:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'Day': ['Mon', 'Tue', 'Wed', 'Thur', 'Fri',
                           'Mon', 'Tue', 'Wed', 'Thur', 'Fri'],
                   'Customers': [44, 46, 49, 59, 54,
                                 33, 46, 50, 49, 60],
                   'Time': ['M', 'M', 'M', 'M', 'M',
                            'E', 'E', 'E', 'E', 'E']})

#view DataFrame
df
Run Code Online (Sandbox Code Playgroud)

这是绘制分组条形图的代码:

import matplotlib.pyplot as plt
import seaborn as sns

#set seaborn plotting aesthetics
sns.set(style='white')

#create grouped bar chart
sns.barplot(x='Day', y='Customers', hue='Time', data=df) 
Run Code Online (Sandbox Code Playgroud)

现在我想在条形顶部添加标签,但以百分比值显示。请帮忙

python matplotlib bar-chart pandas seaborn

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