将python pandas系列转换为数据帧并将列拆分为两个

时间:2015-06-03 18:17:31

标签: python pandas dataframe

这是我的系列名为表

Host
cds170.yyz.llnw.net     1
cds172.yyz.llnw.net     3
cds180.yyz.llnw.net     1
cds182.yyz.llnw.net     1
cds183.yyz.llnw.net     3
fcds113.yyz.llnw.net    1
Name: Host, dtype: int64

这是我想要的数据框

Host                  count
cds170.yyz.llnw.net     1
cds172.yyz.llnw.net     3
cds180.yyz.llnw.net     1
cds182.yyz.llnw.net     1
cds183.yyz.llnw.net     3
fcds113.yyz.llnw.net    1

我试过了

table = pd.DataFrame(table)
table = pd.DataFrame(table.Host.str.split().tolist(), columns = ['Host', 'count'])

但是我得到了

ValueError: Shape of passed values is (1, 1), indices imply (2, 1)

有人可以帮我这样做吗?

1 个答案:

答案 0 :(得分:2)

以下内容应该有效:

In [5]:

pd.DataFrame({'Host':s.index, 'Count':s.values})
Out[5]:
   Count                  Host
0      1   cds170.yyz.llnw.net
1      3   cds172.yyz.llnw.net
2      1   cds180.yyz.llnw.net
3      1   cds182.yyz.llnw.net
4      3   cds183.yyz.llnw.net
5      1  fcds113.yyz.llnw.net

因此,您可以构建一个内联的dict,并将其作为数据传递给DataFrame ctor