【问题标题】:pandas: populate all rows in a dataframe column with the values from one cell in a separate data framepandas:使用单独数据框中一个单元格的值填充数据框列中的所有行
【发布时间】:2021-04-10 13:49:30
【问题描述】:

我想用单独数据框中一个单元格的值填充数据框列中的所有行。

两个 dfs 都基于从同一个 CSV 读取的数据。

data_description = pd.read_csv(file.csv, nrows=1) 

#this two rows of data: one row of column headers and one row of values. The value I want to use later is under the header "average duration"

data_table = pd.read_csv(file.csv, skiprows=3) 

#this is a multi row data table located directly below the description. I to want add a "duration" column will all rows populated by "average duration" from above.

df1 = pd.DataFrame(data_description)
df2 = pd.DataFram(data_table)

df2['duration'] = df1['average duration']

最后一行仅适用于列中的第一行。如何向下延伸所有行?

如果我直接分配“平均持续时间”值,它会起作用,例如df2['duration'] = 60,但我希望它是动态的。

【问题讨论】:

    标签: python-3.x pandas csv analysis


    【解决方案1】:

    您必须从 df1 中提取值,然后将值分配给 df2。您分配的是一个系列,而不是值。

    data_description = pd.read_csv(file.csv, nrows=1) 
    
    data_table = pd.read_csv(file.csv, skiprows=3) 
    
    df1 = pd.DataFrame(data_description)
    df2 = pd.DataFram(data_table)
    
    df2['duration'] = df1['average duration'][0]
    

    【讨论】:

    • 我怀疑这会很简单。 . .谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-04
    • 2013-02-08
    • 2023-03-07
    • 2021-11-19
    • 2020-11-26
    相关资源
    最近更新 更多