1

文字列データの numpy 配列があり、現在そのサブセットを で抽出していdata_subset = original_data[:, [1, 3, 8]]ます。ただし、データ サブセットの列の 1 つを、元のデータの 2 つの列を結合し、スペースで結合したものにしたいと考えています。

私が考えている組み合わせの例は、次のとおりです。姓名を表す 2 つの列があります。例のデータの例として、行はJohn列 3Smithと列 4 にありますが、新しいデータでは単一の列が必要ですJohn Smith。そのような結合を実行するための素敵なnumpy関数はありますか?

4

2 に答える 2

4

ここpandasではなくライブラリを使用することをお勧めします.文字列に配列を使用することは、通常、価値があるよりも面倒です. OTOH、あなたが望むものは非常に簡単です:numpynumpypandas

>>> from pandas import DataFrame
>>> df = DataFrame({"first": ["John", "Jane"], "last": ["Smith", "Jones"]})
>>> df
  first   last
0  John  Smith
1  Jane  Jones
>>> df["first"] + " " + df["last"]
0    John Smith
1    Jane Jones

ただし、絶対に を使用しnumpyたい場合は、 を に変更すると、必要なことができdtypeますobject

>>> import numpy as np
>>> a = np.array([["John", "Smith"], ["Jane", "Jones"]])
>>> a = a.astype(object)
>>> a[:,0] += " " + a[:,1]
>>> a = a[:,:1]
>>> a
array([[John Smith],
       [Jane Jones]], dtype=object)
于 2012-12-04T05:40:20.847 に答える
0

標準のPythonを使用して結合を行うことができます。これは、次のように機能するはずです。

data_subset = original_data[:, [1, 3]]
data_subset[:, 1] += " " + original_data[:, 8]
于 2012-12-03T23:47:51.240 に答える