gpt4 book ai didi

python - 为 Pandas 中的新列赋值

转载 作者:行者123 更新时间:2023-12-04 10:37:20 26 4
gpt4 key购买 nike

您好,我有一个数据框,如下所示:

Col1
ABC
ABCD
XYZ Ju21

我想将值分配给此数据框中的新列:
  • 如果 Col1 不包含空格,则将 Col1(行值)复制到 Col2
  • 如果 Cole 包含空格,则提取第一个空格之前的字符串并将其分配给 Col2

  • 可以使用正则表达式或任何 Pandas 函数来完成吗?任何帮助都感激不尽。

    最佳答案

    这是结合str.contains的解决方案, str.splitlambdanp.where :

    import pandas as pd
    import numpy as np
    df1 = pd.DataFrame({'index':[1,2,3],'Col1':['ABC','ABCD','XYZ Ju21']})

    df1['Col2'] = np.where(df1['Col1'].str.contains(' '),df1['Col1'].str.split(' ').apply(lambda x: x[0]),df1['Col1'])
    print(df1)

    输出:
       index      Col1  Col2
    0 1 ABC ABC
    1 2 ABCD ABCD
    2 3 XYZ Ju21 XYZ

    关于python - 为 Pandas 中的新列赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60102303/

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