将索引值移动到 pandas 数据框中的列名称中

我正在尝试重塑多索引数据框,以便将索引第二级的值合并到新数据框的列名称中。在下面的数据框中,我想将 A 和 B 从“源”移动到列中,以便拥有 s1_A、s1_B、s2_A、...、s3_B。

我尝试显式创建新数据框的结构,并使用嵌套的 for 循环填充它以重新分配值,但速度非常慢。我已经尝试了 pandas API 中的许多功能,但运气不佳。任何帮助将非常感激。

我正在尝试为 django 创建一个可以运行的自定义命令python manage.py cert_transparency,我已经快完成了,但遇到了一些麻烦。这个的目的是在后台创建一个 24/7 运行的命令,我只是在 docker 容器中运行它。


我收到此错误消息


certificate_update: 0cert [00:00, ?cert/s]Traceback (most recent call last):

  File "manage.py", line 15, in <module>

    execute_from_command_line(sys.argv)

  File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 401, in execute_from_command_line

    utility.execute()

  File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 395, in execute

    self.fetch_command(subcommand).run_from_argv(self.argv)

  File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 330, in run_from_argv

    self.execute(*args, **cmd_options)

  File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 371, in execute

    output = self.handle(*args, **options)

  File "/src/scraper/management/commands/cert_transparency.py", line 184, in handle

    certstream.listen_for_events(callback, url=certstream_url)

NameError: name 'callback' is not defined

基本上我想做的只是将此脚本作为 django 中的自定义管理命令导入。


宝慕林4294392
浏览 116回答 2
2回答

凤凰求蛊

df = df.unstack(level=1)df.columns = ['_'.join(col).strip() for col in df.columns.values]print(df)印刷:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;s1_A&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;s1_B&nbsp; s2_A&nbsp; s2_B&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;s3_A&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;s3_Bsample&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;1&nbsp; &nbsp; &nbsp; &nbsp;4.665045e-310&nbsp; 6.904071e-310&nbsp; &nbsp;0.0&nbsp; &nbsp;0.0&nbsp; 6.903913e-310&nbsp; 2.121996e-3142&nbsp; &nbsp; &nbsp; &nbsp;6.904071e-310&nbsp; &nbsp;0.000000e+00&nbsp; &nbsp;0.0&nbsp; &nbsp;0.0&nbsp; 3.458460e-323&nbsp; &nbsp;0.000000e+003&nbsp; &nbsp; &nbsp; &nbsp; 0.000000e+00&nbsp; &nbsp;0.000000e+00&nbsp; &nbsp;0.0&nbsp; &nbsp;0.0&nbsp; &nbsp;0.000000e+00&nbsp; &nbsp;0.000000e+00

HUH函数

Unstack到一个新的数据帧中,并使用以下方法折叠结果 frmae 的多级索引f stringdf1= df.unstack()df1.columns = df1.columns.map('{0[0]}_{0[1]}'.format)&nbsp; &nbsp; &nbsp; &nbsp; s1_A&nbsp; s1_B&nbsp; s2_A&nbsp; s2_B&nbsp; s3_A&nbsp; s3_Bsample&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;1&nbsp; &nbsp; &nbsp; &nbsp; 1.2&nbsp; &nbsp;1.2&nbsp; &nbsp;3.4&nbsp; &nbsp;3.4&nbsp; &nbsp;5.6&nbsp; &nbsp;5.62&nbsp; &nbsp; &nbsp; &nbsp; 1.2&nbsp; &nbsp;1.2&nbsp; &nbsp;3.4&nbsp; &nbsp;3.4&nbsp; &nbsp;5.6&nbsp; &nbsp;5.63&nbsp; &nbsp; &nbsp; &nbsp; 1.2&nbsp; &nbsp;1.2&nbsp; &nbsp;3.4&nbsp; &nbsp;3.4&nbsp; &nbsp;5.6&nbsp; &nbsp;5.6
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python