gpt4 book ai didi

python - pandas:在 DataFrame 中组合两列

转载 作者:IT老高 更新时间:2023-10-28 20:24:21 25 4
gpt4 key购买 nike

我有一个 Pandas DataFrame,其中有多个列:

Index: 239897 entries, 2012-05-11 15:20:00 to 2012-06-02 23:44:51
Data columns:
foo 11516 non-null values
bar 228381 non-null values
Time_UTC 239897 non-null values
dtstamp 239897 non-null values
dtypes: float64(4), object(1)

其中 foobar 是包含相同数据但名称不同的列。有没有办法将组成 foo 的行移动到 bar 中,理想情况下同时保持 bar 的名称?

最后 DataFrame 应该显示为:

Index: 239897 entries, 2012-05-11 15:20:00 to 2012-06-02 23:44:51
Data columns:
bar 239897 non-null values
Time_UTC 239897 non-null values
dtstamp 239897 non-null values
dtypes: float64(4), object(1)

即组成 bar 的 NaN 值被替换为 foo 中的值。

最佳答案

您可以直接使用fillna并将结果分配给列'bar'

df['bar'].fillna(df['foo'], inplace=True)
del df['foo']

一般例子:

import pandas as pd
#creating the table with two missing values
df1 = pd.DataFrame({'a':[1,2],'b':[3,4]}, index = [1,2])
df2 = pd.DataFrame({'b':[5,6]}, index = [3,4])
dftot = pd.concat((df1, df2))
print dftot
#creating the dataframe to fill the missing values
filldf = pd.DataFrame({'a':[7,7,7,7]})

#filling
print dftot.fillna(filldf)

关于python - pandas:在 DataFrame 中组合两列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10972410/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com