我在Jupyter notebook(Python 2)中导入了一个带有Pandas read_csv的制表符分隔文件,并提取了感兴趣的单个列:rawData = pd.read_csv(filename, delim_whitespace = True, header = 20)
columnOfInterest = rawData.ix[:, 9]
我感兴趣的专栏的格式如下:
^{pr2}$
不是这个数据帧中的每一行都有每个头,我不知道可能的头的全部集合。我的数据值“123”都是数字。在
在使用;作为分隔符拆分列中的元素之后,我的所有行的列数都等于行中的值的数目,这在整个数据集中是不一致的(参差不齐)。我要把它转换成一个缺少值的矩阵。在
我想做的是从DataFrame中提取每一行,提取头信息,如果头标签是新的(也就是说,它在已经处理的任何行中都不存在),那么我想将它添加到我的列名列表中。当然,我希望从行中删除头名称和等号,并希望我的数据都放在适当的位置(因此,使用附加到每个数据值的头信息将值放入适当的列中)。所以,我想要这样的东西:# Original data frame, first 2 rows
['header1=123', 'header2=123', 'header3=123'] #
['header1=123', 'header3=123', 'header4=123'] #
# New data frame, first 2 rows plus column names
header1 header2 header3 header4
123 123 123 null #
123 null 123 123 #
显然,这似乎是一个正则表达式的工作!然而,我不知道如何在熊猫身上做到这一点。缺少的数据应为null。在