小编Roy*_*Han的帖子

从一组基于值的列中选择一个值,然后使用该值创建新列?

所以如果我有一个像这样的大熊猫数据框:

   A  B  C  D
0  1  2  3  a 
1  2  4  6  a
2  4  8  8  b
3  2  3  5  c
Run Code Online (Sandbox Code Playgroud)

并想根据“ D”列中的条件从“ A”,“ B”或“ C”列中进行选择来插入“ E”行,我该怎么做?例如:如果D == a,则选择'A',否则选择'B',输出:

   A  B  C  D  E
0  1  2  3  a  1
1  2  4  6  a  2
2  4  8  8  b  8
3  2  3  5  c  3
Run Code Online (Sandbox Code Playgroud)

提前致谢!

python dataframe pandas

4
推荐指数
1
解决办法
58
查看次数

Dataframe.lookup和映射组合导致列标签错误

我有一个大约为(1200,10)的大型数据帧,大部分是字符串,我必须在现有引用列说'Y'的基础上附加一个新列说'Z',其值是'A','B','C或未知(NaN或其他),因此我需要在df中选择三个对应的列之一,例如“ D”,“ E”,“ F”,或输出NaN并将此值附加为列“ Z”。我目前有以下代码:

df = pd.DataFrame({'T': {0: '.', 1: '.', 2: '.', 3: '.'}, 
                   'G': {0: '.', 1: '.', 2: '.', 3: '.'}, 
                   'D': {0: 4, 1: 1, 2: 5, 3: 3}, 
                   'E': {0: 6, 1: 2, 2: 7, 3: 2}, 
                   'F': {0: 8, 1: 3, 2: 9, 3: 1}, 
                   'K': {0: '.', 1: '.', 2: '.', 3:'.'}, 
                   'Y': {0: 'A', 1: 'B', 2: 'B', 3: np.nan}})

d = {'A': 'D', 'B': 'E', 'C': 'F'}
df['Z'] = df.lookup(df.index, …
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas

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

标签 统计

dataframe ×2

pandas ×2

python ×2