【问题标题】:Creating a table/report using pandas using CSV/Excel/SPSS file使用 CSV/Excel/SPSS 文件使用 pandas 创建表/报告
【发布时间】:2018-07-25 09:51:05
【问题描述】:

我需要为 CSV 或 Excel 或 SPSSfile 创建表格或数据列表,其中有 100 名受访者,数据文件中有 56 个变量,数据文件中包含 pandas 或仅使用 Python 的任何其他库,请在我尝试此操作时帮助我,但是无法创建包含 2 个以上变量的表。

我使用 pandas 库来尝试上述要求。

我需要创建 excel 文件,该文件在行中有单独的表格,例如下面的 Gender/Age 和列中的其他问题。

Column1 Column2 Column3 Column4 Column5 Column6 Column7 Column8 Column9 Column10    Column11    Column12
Question No.    Code            Total                       RQ2 
                Total   Male    Female  18-24   25-30   31-35   Yes No
Gender  Base                                        
    1       Male                                
    2       Female                              

Age Base                                        
    1       18 or below                             
    2       18-24 yrs                               
    3       25-30 yrs                               
    4       31-35 yrs                               
    5       36-40 yrs                               
    6       41 or above                             
    99      Refuse to answer                                
            Mean                        

【问题讨论】:

  • 请贴出您迄今为止编写的代码以尝试解决此问题。你搜索过熊猫教程吗?这是一个常见的用例。
  • 另外,请将您的问题限制为“每个问题 1 个问题”。 SPSS 文件支持似乎是a separate issue #5768
  • 嗨@i 惊恐的外星人,你能在下面提出建议吗

标签: python excel pandas csv spss


【解决方案1】:

我已经为上述请求尝试了以下代码。

将熊猫导入为 pd df = pd.read_excel("Data.xlsx")

打印(df)

Gender=pd.crosstab(df.Gender,[df.Gender,df.AgeDummy,df.RQ2])

年龄=pd.crosstab(df.AgeDummy,[df.Gender,df.AgeDummy,df.RQ2])

打印(性别)打印(年龄)

Gender.to_excel("DataTabulation.xlsx", sheet_name="Sheet1") Age.to_excel("DataTabulation.xlsx", sheet_name="Sheet1")

下面是我得到的结果。

性别 1 2 AgeDummy 3 4 5 6 7 8 3 4 5 6 RQ2 2 2 2 2 2 2 2 2 2 2 AgeDummy 3 18 0 0 0 0 0 1 0 0 0 4 0 31 0 0 0 0 0 3 0 0 5 0 0 15 0 0 0 0 0 3 0 6 0 0 0 12 0 0 0 0 0 2 7 0 0 0 0 8 0 0 0 0 0 8 0 0 0 0 0 7 0 0 0 0

这是不正确的,我知道“pd.crosstab”不是我使用的正确语法,但我无法弄清楚我应该使用哪种语法来满足我的要求,因为我无法找出Google 上的正确答案,因为我在列中需要超过 1 个变量,而不是合并变量。

另外,如何将程序中创建的两个变量(性别和年龄)保存在同一张表中,一个接一个,因为上面的代码只保存最后一个调用的变量并覆盖前一个变量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-30
    • 2011-04-29
    相关资源
    最近更新 更多