将数据框附加到现有的空数据框时跳过两列之间的某些列
Skip some columns between two columns when appending dataframe to existing empty dataframe
目前我正在从 pdf 中提取数据并将其放入 csv 文件中。我将解释这是如何工作的。
首先我创建一个空数据框:
ndataFrame = pandas.DataFrame()
然后我看了资料。为简单起见,假设每个 pdf 的数据相同:
data = {'shoe': ['a', 'b'], 'fury': ['c','d','e','f'], 'chaos': ['g','h']}
dataFrame = pandas.DataFrame({k:pandas.Series(v) for k, v in data.items()})
然后我将此数据附加到空数据框:
ndataFrame = ndataFrame.append(dataFrame)
输出是:
shoe fury chaos
0 a c g
1 b d h
2 NaN e NaN
3 NaN f NaN
不过,问题来了。我需要一些列(比如说 4)在列 fury 和 chaos 之间是空的。这是我想要的输出:
shoe fury chaos
0 a c g
1 b d h
2 NaN e NaN
3 NaN f NaN
我尝试了一些重建索引的方法,但我无法弄明白。欢迎任何帮助。
顺便说一句,我想要的输出可能令人困惑。明确地说,我需要一些列在愤怒和混乱之间完全为空(这是因为一些其他数据手动进入)。
感谢阅读
此答案假定您无法更改上游读取数据的方式。与往常一样,最好在源头处理这些类型的格式更改。如果那不可能,这里有一种在解析后可以做到的方法。
您可以在此处使用 reindex
,使用 numpy.insert
添加您的四列:
dataFrame.reindex(columns=np.insert(dataFrame.columns, 2, [1,2,3,4]))
shoe fury 1 2 3 4 chaos
0 a c NaN NaN NaN NaN g
1 b d NaN NaN NaN NaN h
2 NaN e NaN NaN NaN NaN NaN
3 NaN f NaN NaN NaN NaN NaN
目前我正在从 pdf 中提取数据并将其放入 csv 文件中。我将解释这是如何工作的。
首先我创建一个空数据框:
ndataFrame = pandas.DataFrame()
然后我看了资料。为简单起见,假设每个 pdf 的数据相同:
data = {'shoe': ['a', 'b'], 'fury': ['c','d','e','f'], 'chaos': ['g','h']}
dataFrame = pandas.DataFrame({k:pandas.Series(v) for k, v in data.items()})
然后我将此数据附加到空数据框:
ndataFrame = ndataFrame.append(dataFrame)
输出是:
shoe fury chaos
0 a c g
1 b d h
2 NaN e NaN
3 NaN f NaN
不过,问题来了。我需要一些列(比如说 4)在列 fury 和 chaos 之间是空的。这是我想要的输出:
shoe fury chaos
0 a c g
1 b d h
2 NaN e NaN
3 NaN f NaN
我尝试了一些重建索引的方法,但我无法弄明白。欢迎任何帮助。
顺便说一句,我想要的输出可能令人困惑。明确地说,我需要一些列在愤怒和混乱之间完全为空(这是因为一些其他数据手动进入)。
感谢阅读
此答案假定您无法更改上游读取数据的方式。与往常一样,最好在源头处理这些类型的格式更改。如果那不可能,这里有一种在解析后可以做到的方法。
您可以在此处使用 reindex
,使用 numpy.insert
添加您的四列:
dataFrame.reindex(columns=np.insert(dataFrame.columns, 2, [1,2,3,4]))
shoe fury 1 2 3 4 chaos
0 a c NaN NaN NaN NaN g
1 b d NaN NaN NaN NaN h
2 NaN e NaN NaN NaN NaN NaN
3 NaN f NaN NaN NaN NaN NaN