【发布时间】:2018-04-11 18:45:20
【问题描述】:
所以我有一些服务器日志正在尝试解析为表格格式。想象一下日志的结构是这样的
a = "value1"
b = "value2"
c = "value3"
a = "value4"
c = "value5"
a = "value2"
b = "value12"
c = "value8"
我对“记录”的定义(或我的最终 DataFrame 中的行)是从 A 到 C 的所有列。实际上有 30 个左右的列,按起始列名和结束列名总是一样。
我可以很容易地把这个文件读入一个列表(使用 split("=") 函数)并得到这样的结果: 指标值
1 ['a , 'value1']
2 ['b , 'value2']
3 ['c , 'value3']
4 ['a , 'value4']
5 ['c , 'value5']
6 ['a , 'value2']
7 ['b , 'value12']
8 ['c , 'value8']
我什至可以将其转换为 1 记录数据帧,例如: df = pd.DataFrame(List).transpose() 但我到达了一个重复列的DataFrame 喜欢
a b c a1 c2 a3 b1 c3
value1, value2, value3, value4, value5, value2, value12, value8
我真正想要的是这样的东西:
A B C
Value1 Value2 Value3
Value4 NULL Value5
Value2 Value12 Value8
任何想法如何执行转置步骤告诉它每次看到“c”时在 DataFrame 中插入新记录并继续写入直到下一次看到 C,在不存在记录的地方放置一个 NULL 值特定的列?
我这样做完全不正确吗?
【问题讨论】:
标签: python pandas dataframe transform