2017-09-24 7 views
-1

ウェブページからテーブルを削り取ろうとしています。 Webページには、テーブル内のデータへのリンクが含まれています。基本的に、私は各リンクからテーブルを取得し、他のテーブルと連結するforループを書いています。これを行うには、各データポイントを列として転置する必要があります。各データポイントを新しい列として新しいデータフレームを作成する方法は?

df= 2004 | 2006 | 2007 | 2008 ------------------------ GrowthRate 5% | 7% |-5% | 5% Earnings 234 | 449 | -300 | 448 EPS 17.6 |11.8 | 16.8 | 500 P\E 14.08|12.04 |11.37 | 348

私は

df = GrowthRate_2004 GrowthRate_2006 GrowthRate_2007 GrowthRate_2008 Earnings_2004 Earnings_2006 Earnings_2007 Earnings_2008 EPS_2004 EPS_2006 EPS_2007 EPS_2008 P/E_2004 P/E_2006 P/E_2007 P/E_2008 5% 7% -5% 5% 234 449 -300 448 17.6 11.8 16.8 500 14.08 12.04 11.37 348

enter image description here としてそれを作りたい、これを行うための簡単な方法はありますか?

+0

PythonまたはRを使用していますか?あなたの質問は両方のタグを使うべきではありません。あなたが質問をする前に、あなた自身でこれをやろうとした場所のコードを提供してください(または、その時点まで質問を一時的に削除してください)。そして、はい...あなたは検索でかなり簡単に見つけることができるはずの両方の言語でこれを行う簡単な方法があります。 –

+0

いずれかの言語が私と一緒です。 Pythonが好まれます。 @ Hack-R私はPythonで 'df.T'として転置を試みましたが、すべてのデータポイントをどのように転置するのかわかりません。 –

+0

私はあなたが新しいと知っています。私たちが許す種類の質問。ここで質問をする前に、すでにコードを書いているはずです。コード作成サービスではありません。 PythonまたはRを使用しているかどうかを知っておく必要があります。また、既存の質問/回答を調べる必要があるため、テーブルを転置する方法についての明白な答えを見つけることができます。 –

答えて

1

(Python用)の答えのスケッチは、次のようになります。

  • はあなたがそうでないかもしれないので、
+0

ありがとうございます。出来た –

1

を探しているフォームを取得df.unstack()pandas.DataFrame

  • にデータを読み込みますエレガントな解決策が、作品:DFがdatafが

    df_ = pd.DataFrame(data = np.broadcast_to(df.columns.values.reshape(-1, 1).astype(str), df.shape), index = df.columns.values, columns = df.index.values) 
    df_ = pd.get_dummies(df_) 
    df_ = pd.DataFrame(data = df.values.flatten().reshape(1, -1), columns=df_.columns) 
    df_ = pd.DataFrame(data = np.broadcast_to(df.index.values.reshape(-1, 1), df.shape), columns = df.columns) 
    

    ですあなたが変換しているフレーム。

  • 関連する問題