経済的自由を目指すmockが送る株日記。 元理系大学院生の株日記

タイトル画像

スポンサーサイト

--.--.--(--:--)

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
参加ランキング

人気blogランキングへ
FC2 Blog Ranking
カブクンブログマーケットランキング投票
banner3

ウィザーズファンド運用日記



スポンサー広告 トラックバック(-) | コメント(-) | [EDIT]
タイトル画像

csvデータを、ある項目をキーにして並び替える(amazon Product Advertising API試用 第7回 )

2010.06.14(03:09) 717

前回に引き続き、Amazon Product Advertising APIのお勉強。

目的:amazonマーケットプレイスで高く売れる商品を検索できるようにしたい。

  • 高く売れるものは下記の条件のうちのどれかを満たしているものだと思う。これを検索できるようにしたい。まずは、パソコン上でリストを作るようにしたい。
    • 誰も出品していないもの
      • メリット
        • 好きな値段をつけられる。
        • 必要としている人がいれば、高価でも買い取ってもらえる。
      • デメリット
        • 出品されていないだけに物がないかもしれない。
        • 売れないのかもしれない。
    • amazonが在庫を切らしているもの(出品者からしか買えないもの)
      • メリット
        • 出品者がいるので、高く売れる可能性が高い。
        • 出品者がいるということは何らかの手段で調達可能
        • 店頭で見つければ、即売れかも。
      • デメリット
        • 売れないのかもしれない。
    • 中古でも定価に比べて割引率が低い値段がついているもの中古でも高値で売れるもの
      • メリット
        • 出品者がいるので、売れる可能性が高い。
        • 仕入れが容易な可能性が高い。
      • デメリット
        • 新しいものが多いと考えられるので、仕入れ値が比較的高くつくかも。
        • 価格競争が激しい可能性があるため、不良在庫化するかも。

今書いてるamazon関連のスクリプトで、csvデータをソートしたい場面が出てきました。しかも2項目をキーにして。

いろいろ調べたところ、

  • csvは、ハッシュとして扱うと便利であること。
  • ハッシュは、sortメソッドを使って、キーの値を使用して並べ替えることができること

がわかりました。以下のようにして実行するめどが立ちました。

require 'csv'

#book1.csvの中身
#ASIN,cost,name
#1,4,7
#2,5,8
#3,6,9


arr_ori = []

csv=CSV.readlines("book1.csv")

keys = csv[0]
array = csv[1..-1]

#p keys
#p array

#各書籍のデータを1ハッシュにして、それを要素とする配列を作る。
array.each_with_index do |row,i|
  arr_ori[i] = Hash[*keys.zip(row).flatten]
end

#ASINの項目で昇順にソート
arr_high = arr_ori.sort do |a,b|
  a[keys[0]] <=> b[keys[0]]
end

#costの項目で降順にソート
arr_low = arr_ori.sort do |a,b|
  b[keys[1]] <=> a[keys[1]]
end


p "ソート前"
p arr_ori
p "昇順にソート"
p arr_high
p "降順にソート"
p arr_low

参考元(というかそのまま)

勉強資料 (主な引用元)

amazon Product Advertising API試用 これまでの軌跡

参加ランキング

人気blogランキングへ
FC2 Blog Ranking
カブクンブログマーケットランキング投票
banner3

ウィザーズファンド運用日記



<<アフィリエイトより入金(A8) | ホームへ | amazon Product Advertising API試用 第6回>>
コメント
コメントの投稿













管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://kabunikki.blog6.fc2.com/tb.php/717-8bdd4f7d
この記事にトラックバックする(FC2ブログユーザー)
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。