私のマトリックスは次のようになります。
['Hotel', ' "excellent"', ' "very good"', ' "average"', ' "poor"', ' "terrible"', ' "cheapest"', ' "rank"', ' "total reviews"']
['westin', ' 390', ' 291', ' 70', ' 43', ' 19', ' 215', ' 27', ' 813']
['ramada', ' 136', ' 67', ' 53', ' 30', ' 24', ' 149', ' 49', ' 310 ']
['sutton place', '489', ' 293', ' 106', ' 39', ' 20', ' 299', ' 24', ' 947']
['loden', ' 681', ' 134', ' 17', ' 5', ' 0', ' 199', ' 4', ' 837']
['hampton inn downtown', ' 241', ' 166', ' 26', ' 5', ' 1', ' 159', ' 21', ' 439']
['shangri la', ' 332', ' 45', ' 20', ' 8', ' 2', ' 325', ' 8', ' 407']
['residence inn marriott', ' 22', ' 15', ' 5', ' 0', ' 0', ' 179', ' 35', ' 42']
['pan pacific', ' 475', ' 262', ' 86', ' 29', ' 16', ' 249', ' 15', ' 868']
['sheraton wall center', ' 277', ' 346', ' 150', ' 80', ' 26', ' 249', ' 45', ' 879']
['westin bayshore', ' 390', ' 291', ' 70', ' 43', ' 19', ' 199', ' 813']
これから一番上の行と0番目の列を削除して、新しいマトリックスを作成します。
どうすればよいですか?
通常、Javaなどでは次のコードを使用します。
for (int y; y< matrix[x].length; y++)
for(int x; x < matrix[Y].length; x++)
{
if(x == 0 || y == 0)
{
continue
}
else
{
new_matrix[x][y] = matrix[x][y];
}
}
Pythonでこのような要素を繰り返して選択的にコピーする方法はありますか?
ありがとう
編集
また、行列を反復処理するときに、各行列要素を文字列から浮動小数点数に変換しようとしています。
これは、以下の回答に基づいて更新された修正コードです。
A = []
f = open("csv_test.csv",'rt')
try:
reader = csv.reader(f)
for row in reader:
A.append(row)
finally:
f.close()
new_list = [row[1:] for row in A[1:]]
l = np.array(new_list)
l.astype(np.float32)
print l
ただし、エラーが発生します
--> l.astype(np.float32)
print l
ValueError: setting an array element with a sequence.