小编Sta*_*tan的帖子

我们如何使用提供数据框的函数使用回调在Dash Table中动态创建数据列

我正在尝试使用Inputs在Web上创建破折号表。但是问题在于,数据是通过回调和先验从数据库创建的,除非使用回调函数创建了pandas dataframe,否则我不知道列的名称。我已经检查过我获得了正确的数据。但是无法显示它。我使用了多个输出选项(使用Dash 0.41)

我的代码如下所示:(我未提供在回调someFunc中生成熊猫数据帧的函数的详细信息,因为对于Dash代码TroubleShooting而言,这并不重要。

 import dash_table as dt

 def someFunc(ID, pattern_desc, file_path):

       ## do something 
      return df # pandas dataframe
Run Code Online (Sandbox Code Playgroud)
 external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']

 app = dash.Dash(__name__, external_stylesheets=external_stylesheets)

 server = app.server

 app = dash.Dash(__name__)

 app.config.suppress_callback_exceptions = True
 app.css.config.serve_locally = True
 app.scripts.config.serve_locally = True


 app.layout = html.Div(
      children = [
      html.Div(
      id = 'title',
      children = appTitle,
      className = 'titleDiv'  
   ),
 html.Div(
    children = [
        html.Div(
            children = "Enter ID:",
            className = 'textDiv'
        ),
        dcc.Input(
            id = 'ID',
            type …
Run Code Online (Sandbox Code Playgroud)

html css python pandas plotly-dash

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

在 Python 中获取从周日开始的周数时出现问题?

我正在使用 Python 3.6,并且在获取从周日开始的周数时遇到问题。

如何在 Python 中找到从周日开始的周数?

t1 = datetime.datetime.now()

t1.strftime("%U")
Run Code Online (Sandbox Code Playgroud)

例如, on09/16/2018 Sunday它应该给出WW38而不是WW37它现在给出的。

我看到 、"%U""%V""%W"给予相同的。

任何帮助将不胜感激。

数据框的一小部分如下:

   time                   value
2018/09/15 1:08:19 PM   11.87
2018/09/16 6:23:17 PM   10.794
2018/09/16 6:37:48 PM   10.313
2018/09/16 6:54:14 PM   10.578
2018/09/16 6:58:24 PM   11.057
2018/09/19 9:08:24 PM   13.09
Run Code Online (Sandbox Code Playgroud)

每次我创建 WW 专栏时。问题是我希望 WW 在周日而不是周一开始。

我的代码:

ww_l =[]
for date in df['time']:  
  date_v = datetime.strptime(tv, "%Y-%m-%d %H:%M:%S")  
  curr_ww = datetime.date(date_v).strftime("%W")   
  ww_l.append(curr_ww)
df['WW'] = pd.DataFrame(ww_l)
Run Code Online (Sandbox Code Playgroud)

python datetime pandas

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

将多个字符串参数传递给 Python 脚本

我有一个 python 脚本,需要传递多个参数。第一个参数可能有多个电子邮件,第二个参数是一个字符串,第三个参数也是一个字符串。

假设我有文件

    mytest.py:

    def tfunc(em, st1, st2):
      
           #### do blah blah blah

    def main ():

       eml = sys,argv[1].strip()
       st1v = sys,argv[2].strip()
       st2v = sys,argv[3].strip()

       dosom = tfunc(eml, st1v, st2v)

    if __name__ == '__main__':
      main()
Run Code Online (Sandbox Code Playgroud)

现在我测试在命令行上运行该函数的方法是:

        python mytest.py xx@yz.com  value of file 1  value of file 2
Run Code Online (Sandbox Code Playgroud)

所以参数实际上是 xx@yz.com (还需要知道如果我有多个电子邮件会发生什么),“文件 1 的值”和“文件 2 的值”

在我实际的最终代码中,两个参数都会有空格。然而,当我运行代码时,它正确地获取电子邮件(如果只有一个),但将第二个参数作为值(来自第一个参数)和(来自第一个参数)。但这不是我想要的。

我正在寻找 xx@yz.com 作为第一个参数,“文件 1 的值”作为第二个参数,“文件 2 的值”作为第三个参数。

我可以寻求帮助吗?提前致谢。

python arguments parameter-passing sys command-line-arguments

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

使用 Pandas 以特定格式堆叠数据框

我有一个 panas 数据框,如下所示:

 df 

   Prod  ProdDesc   tot    avg   qtr        val_qtr
   A      Cyl       110   8.7    202301     12
   A      Cyl       110   8.7    202302     56.9
   A      Cyl       110   8.7    202303      9
   A      Cyl       110   8.7    202304      0
Run Code Online (Sandbox Code Playgroud)

所以我想要的是堆叠/转置数据帧。我用熊猫融化,

    df_tra = df.melt(id_vars=['Prod', 'ProdDesc'], var_name='Attrib', value_name='Value')
    df_tra.drop_duplicates()
Run Code Online (Sandbox Code Playgroud)

所以我的输出如下:

df_tra


    Prod  ProdDesc  Attrib   Value
     A    Cyl       tot      110           
     A    Cyl       avg      8.7           
     A    Cyl       quarter  202301    
     A    Cyl       quarter  202302
     A    Cyl       quarter  202303
     A    Cyl       quarter  202304        
     A    Cyl       val_qtr  12    
     A    Cyl       val_qtr  56.9 …
Run Code Online (Sandbox Code Playgroud)

python transpose pivot-table melt pandas

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