タグ付けされた質問 「group-by」

GROUP BYは、SQLリレーショナルデータベース標準のコマンドで、共通のフィールド値を共有する行のグループを単一の行に折りたたみます。SUM()やAVG()など、グループ内の他のフィールドで集計関数を実行して、関連するデータを単一の値に照合できます。

7
dplyrを使用した相対周波数/比率
各グループ内の異なる値の比率を計算したいとします。たとえば、mtcarsデータを使用して、歯車の数の相対頻度をどのように計算しますかで午前と一度に(自動/手動)dplyr? library(dplyr) data(mtcars) mtcars <- tbl_df(mtcars) # count frequency mtcars %>% group_by(am, gear) %>% summarise(n = n()) # am gear n # 0 3 15 # 0 4 4 # 1 4 8 # 1 5 5 私が達成したいこと: am gear n rel.freq 0 3 15 0.7894737 0 4 4 0.2105263 …
153 r  group-by  dplyr  frequency 

8
NaN(欠損)値を持つパンダGroupBy列
私はグループ化したい列に多くの欠損値を持つDataFrameがあります: import pandas as pd import numpy as np df = pd.DataFrame({'a': ['1', '2', '3'], 'b': ['4', np.NaN, '6']}) In [4]: df.groupby('b').groups Out[4]: {'4': [0], '6': [2]} PandasがNaNターゲット値を持つ行を削除したことを確認してください。(これらの行を含めたい!) このような操作が多く(多くのcolsに欠損値がある)、中央値(通常はランダムフォレスト)よりも複雑な関数を使用する必要があるため、複雑なコードを記述しないようにします。 助言がありますか?これのために関数を書くべきですか、それとも簡単な解決策がありますか?

9
SQL-Group Byでのエイリアスの使用
SQL構文に興味があるだけです。だから私が持っているなら SELECT itemName as ItemName, substring(itemName, 1,1) as FirstLetter, Count(itemName) FROM table1 GROUP BY itemName, FirstLetter これは間違っているでしょう GROUP BY itemName, FirstLetter 本当にあるべき GROUP BY itemName, substring(itemName, 1,1) しかし、なぜ前者を便宜上使用できないのでしょうか。
143 sql  group-by  alias 




6
Pythonグループ化
インデックス0が値で、インデックス1がタイプであるデータペアのセットがあるとします。 input = [ ('11013331', 'KAT'), ('9085267', 'NOT'), ('5238761', 'ETH'), ('5349618', 'ETH'), ('11788544', 'NOT'), ('962142', 'ETH'), ('7795297', 'ETH'), ('7341464', 'ETH'), ('9843236', 'KAT'), ('5594916', 'ETH'), ('1550003', 'ETH') ] 私はそれらをタイプごとに(最初のインデックス付き文字列によって)グループ化したいと思います: result = [ { type:'KAT', items: ['11013331', '9843236'] }, { type:'NOT', items: ['9085267', '11788544'] }, { type:'ETH', items: ['5238761', '962142', '7795297', '7341464', …
125 python  group-by 

17
SELECTリストはGROUP BY句になく、非集計列が含まれています…sql_mode = only_full_group_byと互換性がありません
AMとWAMPサーバーを搭載したWindows PCでMySQL 5.7.13を使用 ここで私の問題は、このクエリの実行中に SELECT * FROM `tbl_customer_pod_uploads` WHERE `load_id` = '78' AND `status` = 'Active' GROUP BY `proof_type` このようなエラーが常に発生しています SELECTリストの式#1がGROUP BY句になく、GROUP BY句の列に機能的に依存しない非集計列 'returntr_prod.tbl_customer_pod_uploads.id'が含まれています。これはsql_mode = only_full_group_byと互換性がありません 最善の解決策を教えてください... 次のような結果が必要です +----+---------+---------+---------+----------+-----------+------------+---------------+--------------+------------+--------+---------------------+---------------------+ | id | user_id | load_id | bill_id | latitude | langitude | proof_type | document_type | file_name | is_private | …



10
GroupBy pandasDataFrameと最も一般的な値を選択します
3つの文字列列を持つデータフレームがあります。最初の2つのすべての組み合わせに対して、3番目の列の1つの値だけが有効であることを私は知っています。データをクリーンアップするには、最初の2列でデータフレームごとにグループ化し、組み合わせごとに3番目の列の最も一般的な値を選択する必要があります。 私のコード: import pandas as pd from scipy import stats source = pd.DataFrame({'Country' : ['USA', 'USA', 'Russia','USA'], 'City' : ['New-York', 'New-York', 'Sankt-Petersburg', 'New-York'], 'Short name' : ['NY','New','Spb','NY']}) print source.groupby(['Country','City']).agg(lambda x: stats.mode(x['Short name'])[0]) コードの最後の行が機能せず、「キーエラー '短い名前'」と表示され、都市のみでグループ化しようとすると、AssertionErrorが発生します。どうすれば修正できますか?

6
MySQLの「Group By」と「Order By」
電子メールのテーブルから一連の行を選択し、送信者ごとにグループ化できるようにしたい。私のクエリは次のようになります: SELECT `timestamp`, `fromEmail`, `subject` FROM `incomingEmails` GROUP BY LOWER(`fromEmail`) ORDER BY `timestamp` DESC クエリはほぼ期待どおりに機能します。電子メールでグループ化されたレコードが選択されます。問題は、件名とタイムスタンプが特定の電子メールアドレスの最新のレコードに対応していないことです。 たとえば、次のように返されます。 fromEmail: john@example.com, subject: hello fromEmail: mark@example.com, subject: welcome データベースのレコードが次の場合: fromEmail: john@example.com, subject: hello fromEmail: john@example.com, subject: programming question fromEmail: mark@example.com, subject: welcome 「プログラミングの質問」の件名が最新の場合、電子メールをグループ化するときにMySQLにそのレコードを選択させるにはどうすればよいですか?

12
MySQLで月と年でグループ化
各行にタイムスタンプが設定されたテーブルがある場合、この特定のjsonオブジェクト形式に合うようにクエリをどのようにフォーマットしますか。 私はjsonオブジェクトを年/月に整理しようとしています。 クエリのベースとなるjson: { "2009":["August","July","September"], "2010":["January", "February", "October"] } これが私が今までに持っているクエリです- SELECT MONTHNAME(t.summaryDateTime) as month, YEAR(t.summaryDateTime) as year FROM trading_summary t GROUP BY MONTH(t.summaryDateTime) DESC"; クエリは、(予想通り)年ごとにまとめられているため、故障しています。
95 sql  mysql  group-by  date 

10
時間範囲内で5分の間隔にグループ化する
やりたいmySQLコマンドにいくつか問題があります。 SELECT a.timestamp, name, count(b.name) FROM time a, id b WHERE a.user = b.user AND a.id = b.id AND b.name = 'John' AND a.timestamp BETWEEN '2010-11-16 10:30:00' AND '2010-11-16 11:00:00' GROUP BY a.timestamp これは私の現在の出力ステートメントです。 timestamp name count(b.name) ------------------- ---- ------------- 2010-11-16 10:32:22 John 2 2010-11-16 10:35:12 John 7 2010-11-16 10:36:34 …
93 mysql  sql  group-by 

6
MySQLで週ごとにグループ化する方法は?
Oracleのテーブルサーバーは、組み込み関数を提供しますTRUNC(timestamp,'DY')。この関数は、タイムスタンプを前の日曜日の深夜に変換します。MySQLでこれを行うための最良の方法は何ですか? オラクルはTRUNC(timestamp,'MM')、タイムスタンプが発生した月の初日の深夜にタイムスタンプを変換することも提供しています。MySQLでは、これは簡単です。 TIMESTAMP(DATE_FORMAT(timestamp, '%Y-%m-01')) しかし、このDATE_FORMATトリックは数週間は機能しません。私はそのWEEK(timestamp)機能を知っていますが、1年以内の週番号は本当に必要ありません。これは複数年の作業用です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.