ปรับข้อมูลเป็นรายปี - Tableau

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

สูตรของฉันคือ

 sum(profit)/month(selected date) *12

ฉันจะรับจำนวนเต็มของเดือนปัจจุบันได้อย่างไร ดูเหมือนว่าจะเป็นปัญหา แต่ก็พยายามรวมเดือนด้วย

ขอบคุณ.


person gemmo    schedule 08.07.2014    source แหล่งที่มา


คำตอบ (1)


คำตอบสั้นๆ: ตัดการเรียกเป็นเดือนด้วยการเรียก min() ซึ่งใช้ได้ดีถ้าคุณมี MONTH([selected date]) ในการแสดงภาพเป็นมิติข้อมูล

เขตข้อมูลจากการคำนวณใน Tableau มีสามประเภท:

  • การคำนวณระดับแถวซึ่งดำเนินการกับแถวข้อมูลเดียว พวกเขาสามารถอ่านจากค่าของเขตข้อมูลอื่นๆ ในแถวเดียวกันและส่งกลับค่าเดียวต่อแถว
  • การคำนวณรวมซึ่งดำเนินการกับพาร์ติชันหรือบล็อกของแถวข้อมูล พวกเขาสามารถอ้างอิงผลลัพธ์ของการรวมค่าสำหรับฟิลด์ทั่วทั้งพาร์ติชัน โดยใช้ฟังก์ชันการรวม เช่น SUM() หรือ MIN()
  • การคำนวณตารางซึ่งดำเนินการกับตารางผลลัพธ์รวมทั้งหมด

คุณไม่สามารถมิกซ์แอนด์แมตช์ได้ ทุกอย่างในช่องจากการคำนวณจะต้องทั้งหมดอยู่ในระดับใดระดับหนึ่ง - เขตข้อมูลที่อ้างอิงทั้งหมดต้องใช้ฟังก์ชันการรวม (สำหรับเขตข้อมูลจากการคำนวณแบบรวม) หรือไม่มีเขตข้อมูลใดที่อ้างอิงต้องใช้ฟังก์ชันการรวม (สำหรับเขตข้อมูลจากการคำนวณระดับแถวข้อมูล)

ดังนั้นข้อความแสดงข้อผิดพลาดที่คุณเห็น

บางครั้งคุณทราบว่าค่าทั้งหมดสำหรับเขตข้อมูลจะเหมือนกันในพาร์ติชันโดยขึ้นอยู่กับการแสดงภาพของคุณ ดังนั้นฟังก์ชันการรวมจึงดูเหมือนไม่จำเป็น แต่ Tableau ยังคงต้องการให้คุณชัดเจนเกี่ยวกับวิธีการเปลี่ยนบล็อกของค่าให้เป็นค่าเดียว เนื่องจากจะต้องกำหนดการคำนวณแม้ว่าการแสดงภาพจะถูกแบ่งพาร์ติชันต่างกันก็ตาม ในกรณีเหล่านี้ คุณสามารถใช้ min(), max(), avg() หรือบางทีก็ attr() เนื่องจากค่าเหล่านี้จะส่งกลับค่าเดียวกันสำหรับรายการค่าที่เหมือนกัน

โดยทั่วไปสองประเภทแรกจะถูกดำเนินการบนเซิร์ฟเวอร์ (เช่นถูกนำไปใช้โดย Tableau ปล่อย SQL เพื่อส่งไปยังเซิร์ฟเวอร์ฐานข้อมูล) การคำนวณตารางดำเนินการโดย Tableau บนไซต์ไคลเอนต์เพื่อประมวลผลผลลัพธ์จากเซิร์ฟเวอร์ฐานข้อมูลภายหลัง

การคำนวณตารางเป็นประเภทที่ซับซ้อนที่สุด แต่ก็มีประโยชน์มาก อธิบายเป็นกระทู้อีกวันครับ

person Alex Blakemore    schedule 08.07.2014
comment
ขอบคุณอเล็กซ์ นั่นเป็นเครื่องเตือนใจที่ดี ฉันเอาประเด็นแรกของคุณ เนื่องจากการคำนวณเสร็จสิ้นในแต่ละแถว ฉันทำฟิลด์ที่คำนวณแล้วและทำให้ข้อมูลเป็นรายปีตามแถว ก่อนที่จะทำการรวมกลุ่ม - person gemmo; 09.07.2014