代码之家  ›  专栏  ›  技术社区  ›  Kane Chew

在Pandas中显示/打印系列数据帧中的一列

  •  15
  • Kane Chew  · 技术社区  · 8 年前

    我创建了以下系列和数据帧:

    import pandas as pd
    
    Series_1 = pd.Series({'Name': 'Adam','Item': 'Sweet','Cost': 1})
    Series_2 = pd.Series({'Name': 'Bob','Item': 'Candy','Cost': 2})
    Series_3 = pd.Series({'Name': 'Cathy','Item': 'Chocolate','Cost': 3})`
    df = pd.DataFrame([Series_1,Series_2,Series_3], index=['Store 1', 'Store 2', 'Store 3'])
    

    我只想显示/打印数据框中的一列(带或不带标题行):

    任何一个

    Adam 
    Bob 
    Cathy
    

    Sweet
    Candy
    Chocolate
    

    我尝试了以下不起作用的代码:

    print(df['Item'])
    print(df.loc['Store 1'])
    print(df.loc['Store 1','Item'])
    print(df.loc['Store 1','Name'])
    print(df.loc[:,'Item'])
    print(df.iloc[0])
    

    我可以用一行简单的代码来完成吗?

    3 回复  |  直到 6 年前
        1
  •  21
  •   BENY    8 年前

    通过使用 to_string

    print(df.Name.to_string(index=False))
    
    
     Adam
      Bob
    Cathy
    
        2
  •  13
  •   Tarun Singh    6 年前

    用于打印名称列

    df['Name']
    
        3
  •  6
  •   piRSquared    8 年前

    不确定您真正想要的是什么,但如果您想准确打印您拥有的内容,您可以:

    选项1

    print(df['Item'].to_csv(index=False))
    
    Sweet
    Candy
    Chocolate
    

    for v in df['Item']:
        print(v)
    
    Sweet
    Candy
    Chocolate