タクシーに乗るたびに、さまざまな情報が記載された旅行レポートがメールで届きます。特に、日付、移動時間、車のモデル、ドライバーのフルネームが含まれています。Yandex Taxiからのレポートを分析し、それらから最も興味深い情報を取得するというアイデアが思い浮かびました。あなたも、同じ車を何回運転したのか、同じドライバーが何回あなたを連れて行ったのか、いつも疑問に思っていたでしょう。
ここで概説するタスクは、初心者のアナリストにとっては良い演習になる可能性があります。パンダとHTML解析を備えたpython、SQLを備えた通常の式とデータベースなど、すべてがあります。
情報を得る
これは面白くない部分です。ここでは、メールボックスから情報を取得する方法について説明し、最後にコードを確認して、Pythonラップトップへのリンクを添付します。最も簡単な方法は、メールボックスを* .mbox形式でアンロードすることでした。gmail apiを扱うよりも簡単で、私のメールボックスはそこにあります。これにより、アンロード後のトリップが自動的に追加されることはありませんが、私たちの目的では、これは重要ではありません。
アーカイブを解析するために、メールボックスライブラリを使用します。送信者やメッセージ本文など、メールボックスから各メッセージの基本的なプロパティにアクセスできます。
必要な文字、つまり送信者taxi.yandex.ruからの文字を選択した後、すぐに問題が発生します。Yandexは、レポートの構造を定期的に変更しています。しかし、今年は世界的に一度構造が変わった。それまでは、旅行に関するすべての情報は無地のテキストの形式でしたが、現在は表の形式で形成されています。したがって、情報を抽出するために2つの別々の関数を作成する必要がありました。文字にソリッドテキストの形式の情報が含まれている場合、マスクを使用した正規表現を使用して必要な情報を見つけるだけです。テーブル形式の場合は、美しいスープを使用して文字のHTMLコードを解析します。取得したデータをデータフレームとクラウドデータベースにロードして、後で入場ごとにボックス全体を巻き戻す必要がないようにします。
旅行を見る
構造化された形式でデータを受け取ったので、統計を見るのは興味深いことです。
, .
. , , , , -.
. .
- .
- , , . , .
? !
, ?
. , 24 , . . , , , . .
:
3 , , .
DATE |
NAME |
CAR |
CAR_MODEL |
NUMBER |
NAME_HASH |
|---|---|---|---|---|---|
2020-06-23 |
|
Toyota |
Camry |
37077 |
-2596682743997844296 |
2020-06-17 |
|
Toyota |
Camry |
37077 |
-2596682743997844296 |
2020-06-05 |
|
Toyota |
Camry |
37077 |
-2596682743997844296 |
2019-11-27 |
|
Toyota |
Camry |
37077 |
-1058569546058211362 |
, , - , . , , .
DATE |
TARIF |
NAME |
CAR |
CAR_MODEL |
NUMBER |
NAME_HASH |
|---|---|---|---|---|---|---|
2017-10-11 |
|
|
Hyundai |
i40 |
20377 |
7008433025181534578 |
2020-04-16 |
+ |
|
Toyota |
Camry |
67877 |
7008433025181534578 |
2018-04-11 |
|
|
Kia |
Rio |
67077 |
-2646868843695703984 |
2020-04-17 |
+ |
|
Kia |
Optima |
58777 |
-2646868843695703984 |
, , 150-200 . .
, , , , 29 , .
, , , , . , , , , .
:
pc - 1 , m
, ,
29 - , 1346 - .
, m m+n:
. , , - .
pc , , . , , . , , .
, pc = 0.0062, :
- 257
- 7194
- , +. .. , 2 .
:
pc = 0.0076. :
- 7039
- 209
, . , , , .
, , , : https://colab.research.google.com/drive/1eltee0HilqqVQxpreC9-0w4b08EpMAgM?usp=sharing