คำถามติดแท็ก nan

NaN เป็นคำย่อของ "ไม่ใช่ตัวเลข" NaN บางครั้งก็ไม่เท่ากับตัวมันเอง

9
จะแทนที่ NaN ด้วยค่านำหน้าใน DataFrame ของแพนด้าได้อย่างไร
สมมติว่าฉันมี DataFrame กับNaNs: >>> import pandas as pd >>> df = pd.DataFrame([[1, 2, 3], [4, None, None], [None, None, 9]]) >>> df 0 1 2 0 1 2 3 1 4 NaN NaN 2 NaN NaN 9 สิ่งที่ฉันต้องทำคือแทนที่ทุกค่าด้วยค่าที่NaNไม่ใช่NaNค่าแรกในคอลัมน์เดียวกันด้านบน สันนิษฐานว่าแถวแรกจะไม่มีNaN. ดังนั้นสำหรับตัวอย่างก่อนหน้าผลลัพธ์จะเป็น 0 1 2 0 1 2 3 1 4 2 …

9
ทำไม Double.NaN == Double.NaN ส่งคืนค่าเท็จ
ฉันเพิ่งศึกษาคำถาม OCPJP และฉันพบรหัสแปลก ๆ นี้: public static void main(String a[]) { System.out.println(Double.NaN==Double.NaN); System.out.println(Double.NaN!=Double.NaN); } เมื่อฉันรันรหัสฉันได้รับ: false true เอาต์พุตfalseเมื่อเราเปรียบเทียบสองสิ่งที่ดูเหมือนกันหรือไม่ อะไรNaNหมายถึง?
155 java  floating-point  nan  scjp  ocpjp 

5
ความแตกต่างระหว่าง (NaN! = NaN) และ (NaN! == NaN) คืออะไร
ก่อนอื่นฉันต้องการพูดถึงว่าฉันรู้วิธีisNaN()และการNumber.isNaN()ทำงาน ฉันกำลังอ่านคู่มือที่ชัดเจนโดย David Flanagan และเขายกตัวอย่างวิธีการตรวจสอบว่ามีค่าNaN: x !== x ซึ่งจะส่งผลtrueถ้าหากมีxNaN แต่ตอนนี้ฉันมีคำถาม: ทำไมเขาใช้การเปรียบเทียบที่เข้มงวด เพราะดูเหมือนว่า x != x ทำงานในลักษณะเดียวกัน มันมีความปลอดภัยที่จะใช้ทั้งสองรุ่นหรือฉันหายไปค่าบางอย่าง (s) ใน JavaScript ที่จะกลับมาtrueสำหรับx !== xและfalseสำหรับx != x?
148 javascript  nan 

9
pandas GroupBy คอลัมน์ที่มีค่า NaN (หายไป)
ฉันมี 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 จำนวนมากมีค่าที่หายไป) และใช้ฟังก์ชันที่ซับซ้อนมากกว่าแค่สื่อกลาง (โดยทั่วไปคือป่าสุ่ม) ฉันต้องการหลีกเลี่ยงการเขียนโค้ดที่ซับซ้อนเกินไป ข้อเสนอแนะใด ๆ ฉันควรจะเขียนฟังก์ชั่นสำหรับสิ่งนี้หรือมีวิธีแก้ปัญหาง่ายๆหรือไม่?

7
ตรวจสอบ NaN ใน NumPy อย่างรวดเร็ว
ฉันกำลังมองหาวิธีที่เร็วที่สุดในการตรวจสอบการเกิดขึ้นของน่าน (คนnp.nan) Xในอาร์เรย์ np.isnan(X)หมดปัญหาเนื่องจากมันสร้างอาร์เรย์ของรูปร่างบูลีนX.shapeซึ่งอาจมีขนาดมหึมา ฉันพยายามแต่ที่ดูเหมือนจะไม่ทำงานเพราะnp.nan in X np.nan != np.nanมีวิธีที่รวดเร็วและประหยัดหน่วยความจำในการดำเนินการนี้หรือไม่? (สำหรับคนที่ถามว่า "ยักษ์ขนาดไหน": ฉันบอกไม่ได้นี่คือการตรวจสอบอินพุตสำหรับรหัสไลบรารี)
120 python  numpy  nan 

4
ค่าคงที่ของ C / C ++ NaN (ตามตัวอักษร)?
เป็นไปได้ไหมที่จะกำหนด a NaNให้กับ a doubleหรือfloatใน C / C ++ เช่นเดียวกับใน JavaScript ที่คุณทำ: a = NaN. คุณสามารถตรวจสอบได้ในภายหลังว่าตัวแปรเป็นตัวเลขหรือไม่
110 c++  nan 

11
ใน Java NaN หมายถึงอะไร?
ฉันมีโปรแกรมที่พยายามย่อdoubleตัวเลขที่ต้องการ NaNเอาท์พุทฉันได้รับคือ อะไรNaNหมายถึงใน Java?
108 java  nan 

2
อะไรคือความแตกต่างระหว่าง NaN ที่เงียบและ NaN การส่งสัญญาณ?
ฉันได้อ่านเกี่ยวกับจุดลอยตัวและฉันเข้าใจว่า NaN อาจเป็นผลมาจากการดำเนินการ แต่ฉันไม่เข้าใจว่านี่คือแนวคิดอะไรกันแน่ อะไรคือความแตกต่างระหว่างพวกเขา? สิ่งใดที่สามารถผลิตได้ในระหว่างการเขียนโปรแกรม C ++ ในฐานะโปรแกรมเมอร์ฉันสามารถเขียนโปรแกรมที่ทำให้เกิด sNaN ได้หรือไม่

7
วิธีตั้งค่าเซลล์เป็น NaN ในดาต้าเฟรมแพนด้า
ฉันต้องการแทนที่ค่าที่ไม่ถูกต้องในคอลัมน์ของดาต้าเฟรมโดย NaN mydata = {'x' : [10, 50, 18, 32, 47, 20], 'y' : ['12', '11', 'N/A', '13', '15', 'N/A']} df = pd.DataFrame(mydata) df[df.y == 'N/A']['y'] = np.nan แม้ว่าบรรทัดสุดท้ายจะล้มเหลวและส่งคำเตือนเนื่องจากทำงานกับสำเนา df แล้วอะไรคือวิธีจัดการที่ถูกต้อง? ฉันเคยเห็นวิธีแก้ปัญหามากมายที่มี iloc หรือ ix แต่ที่นี่ฉันต้องใช้เงื่อนไขบูลีน
104 python  pandas  nan 


5
แทนที่ None ด้วย NaN ในดาต้าเฟรมของแพนด้า
ฉันมีโต๊ะx: website 0 http://www.google.com/ 1 http://www.yahoo.com 2 None ฉันต้องการแทนที่ python None ด้วยแพนด้า NaN ฉันเหนื่อย: x.replace(to_replace=None, value=np.nan) แต่ฉันได้รับ: TypeError: 'regex' must be a string or a compiled regular expression or a list or dict of strings or regular expressions, you passed a 'bool' ฉันควรจะทำอย่างไร


5
อะไรคือความแตกต่างระหว่าง NaN และ None?
ฉันกำลังอ่านสองคอลัมน์ของไฟล์ csv โดยใช้แพนด้าreadcsv()จากนั้นกำหนดค่าให้กับพจนานุกรม คอลัมน์ประกอบด้วยสตริงของตัวเลขและตัวอักษร ในบางครั้งมีกรณีที่เซลล์ว่างเปล่า ในความคิดของฉันค่าที่อ่านในรายการพจนานุกรมนั้นควรเป็นNoneแต่nanจะถูกกำหนดให้แทน แน่นอนว่าNoneมีความหมายมากกว่าเซลล์ว่างเนื่องจากมีค่า null ในขณะที่nanบอกว่าค่าที่อ่านไม่ใช่ตัวเลข ความเข้าใจของฉันถูกต้องหรือไม่อะไรคือความแตกต่างระหว่างNoneและnan? ทำไมจึงnanได้รับมอบหมายแทนNone? นอกจากนี้พจนานุกรมของฉันตรวจสอบเซลล์ว่างที่ใช้อยู่numpy.isnan(): for k, v in my_dict.iteritems(): if np.isnan(v): แต่นี่ทำให้ฉันมีข้อผิดพลาดที่บอกว่าฉันไม่สามารถใช้การตรวจสอบนี้vได้ ฉันเดาว่าเป็นเพราะตัวแปรจำนวนเต็มหรือทศนิยมไม่ใช่สตริงที่ควรใช้ หากเป็นจริงฉันจะตรวจสอบv"เซลล์ว่าง" / nanกรณีได้อย่างไร
97 python  numpy  pandas  nan 

3
Python Pandas แทนที่ NaN ในคอลัมน์เดียวด้วยค่าจากแถวที่สองของคอลัมน์ที่เกี่ยวข้อง
ฉันกำลังทำงานกับ Pandas DataFrame นี้ใน Python File heat Farheit Temp_Rating 1 YesQ 75 N/A 1 NoR 115 N/A 1 YesA 63 N/A 1 NoT 83 41 1 NoY 100 80 1 YesZ 56 12 2 YesQ 111 N/A 2 NoR 60 N/A 2 YesA 19 N/A 2 NoT 106 77 2 …


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.