【问题标题】:Adding a string value to the end of each value in a Numpy Array Python在 Numpy Array Python 中的每个值的末尾添加一个字符串值
【发布时间】:2021-07-30 02:58:00
【问题描述】:

什么是 numpy 函数,它遍历数组 a,然后将 endswidth 附加到 a 数组中每个字符串的末尾。

代码:

a = np.array(["BTC", "ETH", "AUD", "DOGE"])
endswidth = "USD"

预期输出:

[BTCUSD, ETHUSD, AUDUSD, DOGE] 

【问题讨论】:

    标签: arrays python-3.x string numpy format


    【解决方案1】:

    你可以使用np.core.defchararray.add:

    a = np.array(["BTC", "ETH", "AUD", "DOGE"])
    endswidth = "USD"
    
    print(np.core.defchararray.add(a, endswidth))
    

    打印:

    ['BTCUSD' 'ETHUSD' 'AUDUSD' 'DOGEUSD']
    

    编辑:替换字符串:

    print(np.core.defchararray.replace(a, "USD", ""))
    

    正如@hpulj 在 cmets 中所述,缩写形式:

    np.char.add(...) 
    np.char.replace(...)
    

    【讨论】:

    • 如果我想删除 "USD" 而不是 .add 我会使用什么,因为我尝试了 subtractremove 不工作。
    • np.char.add 简称。
    【解决方案2】:

    也许这种蛮力方法会有所帮助

    np.array([item+endswidth for item in a])
    

    【讨论】:

    • 对于字符串操作,这与np.char.add 一样好。 numpy 没有实现自己的快速字符串方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-10
    • 2010-10-10
    • 2016-01-03
    • 2016-07-20
    • 1970-01-01
    • 1970-01-01
    • 2021-10-06
    相关资源
    最近更新 更多