代码之家  ›  专栏  ›  技术社区  ›  Bogaso

无法创建熊猫数据框列表

  •  0
  • Bogaso  · 技术社区  · 2 年前

    import pandas as pd
    [pd.concat([pd.DataFrame({'X' : [1,2], 'Y' : ['A', 'B']}), pd.DataFrame({'X' : [1,2], 'Y' : ['A', 'B']})], axis = 0) if (i == 2) \
        pd.concat([pd.DataFrame({'X' : [1,2], 'Y' : ['D', 'E']}), pd.DataFrame({'X' : [1,2], 'Y' : ['D', 'E']})], axis = 0) for i in range(1, 4)]
    

    >>> [pd.concat([pd.DataFrame({'X' : [1,2], 'Y' : ['A', 'B']}), pd.DataFrame({'X' : [1,2], 'Y' : ['A', 'B']})], axis = 0) if (i == 2) \
    ...     pd.concat([pd.DataFrame({'X' : [1,2], 'Y' : ['D', 'E']}), pd.DataFrame({'X' : [1,2], 'Y' : ['D', 'E']})], axis = 0)     for i in range(1, 4)]
      File "<stdin>", line 2
        [pd.concat([pd.DataFrame({'X' : [1,2], 'Y' : ['A', 'B']}), pd.DataFrame({'X' : [1,2], 'Y' : ['A', 'B']})], axis = 0) if (i == 2) \
        pd.concat([pd.DataFrame({'X' : [1,2], 'Y' : ['D', 'E']}), pd.DataFrame({'X' : [1,2], 'Y' : ['D', 'E']})], axis = 0) for i in range(1, 4)]
         ^
    SyntaxError: invalid syntax
    

    你能帮我确定我的代码哪里出错了,我该怎么纠正?

    1 回复  |  直到 2 年前
        1
  •  0
  •   mozway    2 年前

    不确定你想做什么,但你错过了一个 else 在三元中:

    [pd.concat([pd.DataFrame({'X' : [1,2], 'Y' : ['A', 'B']}),
                pd.DataFrame({'X' : [1,2], 'Y' : ['A', 'B']})], axis = 0)
     if (i == 2) else                                                         ## HERE
     pd.concat([pd.DataFrame({'X' : [1,2], 'Y' : ['D', 'E']}),
                pd.DataFrame({'X' : [1,2], 'Y' : ['D', 'E']})], axis = 0)
     for i in range(1, 4)]
    

    输出:

    [   X  Y
     0  1  D
     1  2  E
     0  1  D
     1  2  E,
        X  Y
     0  1  A
     1  2  B
     0  1  A
     1  2  B,
        X  Y
     0  1  D
     1  2  E
     0  1  D
     1  2  E]