วิเคราะห์ความถี่ของช่วงวันที่


9

ฉันมีสเปรดชีตของ Google ที่ฉันต้องการคำนวณช่วงวันที่ ฉันมีคอลัมน์date_utc+1ที่มีข้อมูลวันที่เกือบจะสุ่ม

สิ่งที่ฉันต้องการจะทำคือใส่ค่าวันที่ลงในถังขยะหกชั่วโมงแต่ละครั้งเช่น12/5/2012 23:57:04จนกว่า12/6/2012 0:03:17จะอยู่ในถังขยะแรก12/6/2012 11:20:53จนกระทั่ง12/6/2012 17:17:07ในถังขยะที่สองและอื่น ๆ จากนั้นฉันต้องการนับการเกิดถังขยะเช่น:

bin_from            bin_to                freq
-----------------------------------------------
12/5/2012 23:57:04  12/6/2012 0:03:17     2
12/6/2012 11:20:53  12/6/2012 17:17:07    19
...                 ...                   ...

คำแนะนำบางส่วนยินดีมากเช่นกันเนื่องจากฉันค่อนข้างใหม่สำหรับสเปรดชีต


1
ลองอ่านคำถาม & คำตอบนี้: superuser.com/q/518632/179112
Jacob Jan Tuinstra

@JacobJanTuinstra - ใช้งานได้กับ Google Spreadsheets หรือไม่

@JacobJanTuinstra สิ่งนี้แก้ปัญหาได้จริงsuperuser.com/questions/519286//คุณสามารถตอบคำถามพร้อมลิงก์ไปยังคำตอบของคุณในคำถามอื่นหรือทำเครื่องหมายว่าซ้ำกัน
wnstnsmth

@DaveRook; ดูไฟล์ตัวอย่างที่ฉันได้รวมไว้
จาค็อบ ม.ค. Tuinstra

ในอนาคตโปรดถามคำถามเกี่ยวกับ Google Spreadsheets ที่นี่ไม่ใช่ใน Super User ขอบคุณ!
slhck

คำตอบ:


6

ฉันคิดว่าฉันมีทางออกสำหรับคุณแล้ว มันไม่ได้ทำทั้งหมดโดยอัตโนมัติ แต่จะส่งผลให้ข้อเสนอของคุณ:

  • MM-DD-YYYYในไฟล์ของคุณวันที่จะถูกเขียนเป็น ฉันได้สมมติว่าช่วงวันที่นั้นครอบคลุมเดือนธันวาคมและไม่ใช่วันที่สุ่มตลอดทั้งปี DD-MM-YYYYดังนั้นผมต้องอีกครั้งจัดรูปแบบวันที่
  • ตามแนวทางฉันใช้สูตรต่อไปนี้เพื่อรับช่วงวันที่ที่ไม่ซ้ำกัน: =UNIQUE(ARRAYFORMULA(DATEVALUE(I2:I)))
  • ในแผ่นงาน FREQUENCY ฉันใช้สูตรนี้เพื่อคำนวณช่วงเวลาแรก:
    ='Original Data'!J2+TIME(18;0;0)
    คุณต้องเลือกช่วงเวลาอย่างชาญฉลาด
  • คัดลอกสูตรนี้จนกว่าช่วงเวลาที่ต้องการจะเสร็จสมบูรณ์:
    =A3+TIME(6;0;0)
  • ใช้สูตรFREQUENCYเพื่อคำนวณผลลัพธ์ของคุณ:
    =FREQUENCY('Original Data'!I2:I;A3:A)

ดูไฟล์ตัวอย่างที่ฉันเตรียมไว้: ความถี่


ทำให้รู้สึกที่สมบูรณ์แบบขอบคุณ! คำถามสุดท้าย: คุณแปลงวันที่จาก MM-DD-YYYY เป็น DD-MM-YYYY ได้อย่างไร (ฉันไม่เห็นสูตรใด ๆ )
wnstnsmth

ฉันจะเพิ่มลงในไฟล์ตกลงเป็นโบนัส !! ขอขอบคุณและขอให้โชคดี
จาค็อบ Jan Tuinstra

@wnstnsmth: ดู DATE DATE
Jacob Jan Tuinstra

ยุติธรรมพอ .. คิดว่ามีวิธีที่นุ่มนวล :-)
wnstnsmth

-1

โดยใช้แบบสอบถามภาษาและกลุ่มตามข้อควรทำเคล็ดลับ

บางอย่างเช่น: =QUERY(A1:A509, "select count(B) group by year(A)") ฉันจะพยายามสร้างแบบสอบถามที่ใช้งานได้ในวันนี้

แก้ไข:

ฉันได้แทรกคอลัมน์ใหม่ด้านซ้ายของคอลัมน์ A =year(A2) & "-" & minute(A2)คอลัมน์นี้มีสูตร: นี่เป็นเพียงการทดสอบอย่างรวดเร็วเพื่อสร้างบางช่วงคอลัมน์นี้ควรสะท้อนถึงตรรกะของถังขยะ

สูตร=Query(A:E;"select B, count(A) group by B")จะคำนวณความถี่

- ข้อจำกัดความรับผิดชอบนี่เป็นเพียงตัวอย่างการปรับแต่งบางอย่างเพื่อให้สามารถคำนวณฟังก์ชันการทำงานที่แน่นอนที่กล่าวถึงในคำถาม -


เพื่อให้การทำงานคุณจะต้องเตรียมความพร้อมช่วงตาม:select count(B) A:Bประการที่สองในประเทศสวิสเซอร์แลนด์ส่วนใหญ่อาจใช้เครื่องหมายอัฒภาคแทนเครื่องหมายจุลภาค
จาค็อบ ม.ค. Tuinstra

@wnstnsmth และ Jasper: ฉันได้เพิ่มผลลัพธ์ลงในไฟล์ที่ฉันสร้างขึ้นภายใต้แผ่นงาน QUERY
จาค็อบ ม.ค. Tuinstra

@Jacob ฉันได้แก้ปัญหาของฉันด้วยในชีต (คอลัมน์ K, L, M) ความคิดเห็นใด ๆ เกี่ยวกับการแก้ปัญหานี้? เมื่อคำตอบของฉันถูกลงคะแนนฉันอยากจะรู้ว่าฉันพลาดอะไรบางอย่างที่นี่หรือไม่
Jasper Duizendstra
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.