【问题标题】:Splitting Pandas dataframe by column when duplicate column names exist当存在重复的列名时,按列拆分 Pandas 数据帧
【发布时间】:2020-08-30 04:50:07
【问题描述】:

我有一个数据集,我必须在其中使用 2d 数组读取数据

import csv

with open('#Name.csv', newline ='') as csvfile:
     arrayFull = list(csv.reader(csvfile))

创建一个二维数组。然后我使用

for i in range(2):
    arrayFull.pop(0)

删除二维数组的前两行(我的数据集只需要第三行及以下的数据)。然后我使用

将二维数组分配给 Pandas Dataframe
import pandas as pd
dataframe_1 = pd.DataFrame(arrayFull)

现在我正在尝试将“dataframe_1”按列拆分为 2 个数据帧。我有 8 列,我想要 2 个数据框,每个数据框有 4 列。由于列名称为 A_first、A_second、A_third、A_fourth、A_first、A_second、A_third、A_fourth,因此出现此问题。

我无法使用 pandas 数据框 copy() 函数,因为有重复的列名。根据我的理解,mangle_dupe_colsalso 不起作用,因为这需要从一开始就读取 csv 数据帧,但我通过设置二维数组创建了一个数据帧。有什么想法吗?

【问题讨论】:

标签: python arrays pandas dataframe csv


【解决方案1】:

您可以使用df.iloc 来使用数字索引。

df_first_four_cols = dataframe_1.iloc[:,0:4]
df_second_four_cols = dataframe_1.iloc[:,4:]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-18
    • 2021-09-18
    • 1970-01-01
    • 1970-01-01
    • 2021-08-05
    • 2017-12-25
    相关资源
    最近更新 更多