python - Pandas 枢轴给了我很多 'none' 值

标签 python pandas pivot

我有一个不寻常的数据集给我带来了麻烦。它只是一个像这样的txt文件,有很多这种格式的记录,只是在页面上重复相同的格式。我不能更具体 - 这是一个角色的编码测试,我会诚实地说我得到了帮助,所以我不会得到它,但这真的让我烦恼!

开始:foo NUM:stringwithnumbers-10000098888 DTTIME:20181101Z(在这里想象一个正确的日期戳) 开始时间:20180111 描述:做事 结束:fooend

到目前为止我的代码:

import pandas as pd

stuff = pd.read_csv('thing.ical', sep=':', header=None, index_col=None, skiprows=6)
stuff.columns = ['cols', 'vals']
stuff['index_col'] = stuff.index
stuff = stuff.pivot( index=None, columns='cols')
print(stuff.head())

        vals                                                                   \
cols   BEGIN           DTSTAMP DTSTART;VALUE=DATE   END               SUMMARY   
0     foo                 None               None  None                  None   
1       None              None               None  None                  None   
2       None  stringwithnumbers-10000098888  None  None                  None   
3       None              None           20180111  None                  None   
4       None              None               None  None          Doing things

这在我的透视 df 中给了我很多无值,这是我不想要的。我对数据透视很陌生,我不明白发生了什么?

最佳答案

我认为你需要cumcount对于新索引计数器。也可以在 read_csv 中使用参数 names,因此稍后无需分配列表:

df = pd.read_csv('thing.ical', sep=":", names=['cols', 'vals'], skiprows=6)
print (df)


df = pd.pivot(index=df.groupby('cols').cumcount(),
              columns=df['cols'],
              values=df['vals'])

关于python - Pandas 枢轴给了我很多 'none' 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48424673/

相关文章:

python - 多个url获取Google App Engine python

python - 将 pandas DataFrame 图插入 matplotlib 子图中

Python + Azure 存储队列 receive_messages()

python - 正则表达式搜索不适用于Python

python - 这个 python 语法是什么意思?

python - 对于每个日期 - 是否在任何提供的日期范围内?

python - Numpy、Pandas 和 Sklearn 中的多维缩放拟合(ValueError)

sql-server - 在 SQL Server 中使用透视(错误)- 列名无效

mysql - 子查询或嵌套。我真的不知道。也许两者都不是

sql - 在 Sybase SQL 查询中透视?