小编ham*_*ice的帖子

Pandas DataFrame:如果列为空,则复制该列的内容

我有以下具有命名列和索引的DataFrame:

  'a'     'a*'    'b'    'b*'
1  5      NaN     9      NaN
2  NaN    3       3      NaN
3  4      NaN     1      NaN
4  NaN    9       NaN    7
Run Code Online (Sandbox Code Playgroud)

数据源导致某些列标题的复制略有不同。例如,如上所述,某些列标题是一个字符串,而某些则是带有附加“ *”字符的相同字符串。

我想从任何值(不为null)复制a*b*ab分别。

有没有一种有效的方法来进行这种操作?

python dataframe pandas

2
推荐指数
1
解决办法
1503
查看次数

使用 numpy 数组更改 python pandas 数据帧切片中的元素

想知道是否有人可以帮助我解决这个问题。我正在研究机器学习问题,我已将该df1[Age]专栏分类为df1[Age_group]. 不幸的是,缺少数据,因此任何df[Age]数据都NaN被归类为3

目前,分类3仅意味着“缺失数据”,我想将其更新为有用的东西。我使用 scikit-learn 逻辑回归来猜测缺失的年龄组,它们现在存储在我称为 的 Numpy 数组中missing_age_grps

显然我正在使用的数据集要大得多,但下面应该有足够的数据来说明问题。

在下面的示例中,missing_age_grps是一个只有 2 个的数组,因为只有 2 个实例df1[Age_group] == 3

import pandas as pd
import numpy as np

d = {'ID': [0, 1, 2, 3, 4], 'Sex': ["Male","Female","Male","Male", "Female"], 'Age':[np.nan, 23, np.nan, 6, 15] , 'Age_group':[3,2,3,0,1]}
df1 = pd.Dataframe(d)

print(df1)

ID   Sex         Age  Age_group
0    Male        NaN      3   
1    Female      23       2   
2    Male        NaN …
Run Code Online (Sandbox Code Playgroud)

python pandas

0
推荐指数
1
解决办法
1841
查看次数

标签 统计

pandas ×2

python ×2

dataframe ×1