gpt4 book ai didi

python - 使用引用列在数据框中的行值之间进行选择?

转载 作者:太空宇宙 更新时间:2023-11-03 14:38:16 25 4
gpt4 key购买 nike

我有一个大约 (1200, 10) 的大数据框,主要是字符串,我必须在其中附加一个新列,例如“Z”,现有的引用列“Y”,其值为“A”、“B”或“C”,我需要从中选择 df 中的三个对应列之一,例如“D”、“E”或“F”,并将此值附加为“Z”列。所以现有的表看起来像这样:

   ... T  G  D  E  F  K  ... Y
0 . . . 4 6 8 . ... A
1 . . . 1 2 3 . ... B
2 . . . 5 7 9 . ... B

并要求:

   ... T  G  D  E  F  K  ... Y  Z
0 . . . 4 6 8 . ... A 4
1 . . . 1 2 3 . ... B 2
2 . . . 5 7 9 . ... B 7

我对使用 pandas 还很陌生,如果这看起来是个简单的问题,我深表歉意!

提前致谢!

最佳答案

IIUC 你需要DataFrame.lookupSeries.map用字典来做你的自定义映射。像这样的东西:

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

d = {'A': 'D', 'B': 'E', 'C': 'F'}

df['Z'] = df.lookup(df.index, df.Y.map(d))

T G D E F K Y Z
0 . . 4 6 8 . A 4
1 . . 1 2 3 . B 2
2 . . 5 7 9 . B 7

关于python - 使用引用列在数据框中的行值之间进行选择?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55763980/

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