{"_id":"@iyulab/u-insight","_rev":"29-ed612b8514f8b514d5a1b1e48b2d4a76","name":"@iyulab/u-insight","dist-tags":{"latest":"0.24.0"},"versions":{"0.3.1":{"name":"@iyulab/u-insight","version":"0.3.1","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.3.1","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"d79a59d4e80befcf64d952b983b389c81c87cce9","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.3.1.tgz","fileCount":7,"integrity":"sha512-KZFDQm8ANZThsW1fk6AqianmBiT71uBsKSQL93vr/bZzLRIvJk7E/CqIAGTgQVKJJAa65D9ahEvmeuEXaoR/EA==","signatures":[{"sig":"MEYCIQCB4rhjNQf9hupaTGw3/o4K8fOnWRO4+YV8DnuJOc8eoQIhAL4GRbw2s/WeS4b8ONiImDujWuasTAdG0x775/8M0SqO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":210421},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"673744049970100ce6683127e5d38344ea78fd77","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.0","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.3.1_1772715536190_0.43626623890973515","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@iyulab/u-insight","version":"0.4.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.4.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"13a6b8a611510dd578afd1f44bc1ead647b7b71c","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.4.0.tgz","fileCount":7,"integrity":"sha512-01GVKIkOSzB0eclvT5ud/wlIBYNcWY9/UDU4xwIe2M+o3gc+z4ZTPwMFfmwreSnbERNsD2BuIBH4mxW9ZPG0Ew==","signatures":[{"sig":"MEUCIAPN5e9ZIhCJavUlk7HmUQY5Qs9G8m7puQYv59nbNApBAiEAogIb+xEF/bT0AV3XAhUVXDJ6dWIeUYLrDtVvoATNyxs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":414918},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"8f3d0410278ae0ea247ba3ecedbfed1bf43ad233","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.0","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.4.0_1772967344743_0.14802396253021932","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@iyulab/u-insight","version":"0.5.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.5.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"4e0f11a6c207557d2d6ffb24aeaaa443433030b9","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.5.0.tgz","fileCount":7,"integrity":"sha512-HEN1bpE2HhJiT82ZhZp9g2PWmaQeSez2eRhF04c0Li/eTtrhvuO4tFd0eLtoTTzUeK+TNUb7f15+EKjBeOvdEA==","signatures":[{"sig":"MEYCIQCIOefKqF3CNU5O5bXn063WA89A3OSQ3Z4ERFJkTLiyJAIhAOsnuOqFPGtJz08z3pW/ck9RRkWI7o8FywXOERkRwDhF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":414881},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"7f4e6b270975da2e2345e943eb7a44009468be7f","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.1","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.5.0_1773794092897_0.9406070035196947","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@iyulab/u-insight","version":"0.6.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.6.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"2fd0705d244a1d1da3f22d81638338e278807e9d","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.6.0.tgz","fileCount":7,"integrity":"sha512-GTQfBUaeC4cY0D8nqb4fpDgyOvmz4Tmx/u8V9EbWne6fSC/W1S4J9YLeS5bTkQR20FmgWpTN5LzrTuEh+GPT9w==","signatures":[{"sig":"MEUCIQC5q3kEIA7VzE61leF03YYT4AaRileommg2bf7xe4IYTgIgdVNZPUqZqkI4wmHbYBXns2iHrXp3TBlT5MfgSxwh4HA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":473780},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"c5edf85e4191f9b7b70a7e3984ecea8f5aea6c43","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.1","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.6.0_1774282810745_0.6316921544876406","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@iyulab/u-insight","version":"0.7.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.7.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"47fc22af4718d487f65894849702e400dc00709b","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.7.0.tgz","fileCount":7,"integrity":"sha512-cJQP+YHixCIkuzZmSpUGf1LgZWyFqR3O8AYJ/5pk1vfmZKudQ3IP1KO5DZqaPfzYgUz3oar6AtHcYovkarDcbw==","signatures":[{"sig":"MEUCIQDaTWxwCyUKzm8827T/QDc+1AiFxFAxlbaxWXDR1FPTgwIgDxmY3+opZYhIPUhnAAJsQbI/DchPV2C21DZMPIj42Ak=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":473777},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"f2c2c282e46995056eb12dcd3fd4f83fb2489509","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.1","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.7.0_1775181823547_0.02468542111091354","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@iyulab/u-insight","version":"0.8.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.8.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"9400e16d66a2c8eb565ec781a2a22bc6cd537859","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.8.0.tgz","fileCount":7,"integrity":"sha512-Ba/wbHz+4tK4BjOTJ238KoghjZ3zx2H/jm9P3M/X0HN05oDu4W46mLnpcTZtco2KehDSHAiv0g1NM6jxzaonLA==","signatures":[{"sig":"MEUCIQD0AuMoonGBEjj2yCsIAhPNFGSPAVcL7W7jkxbQM2s4PQIgOHz//ZIvXCwh8XXMZitlW/8P6FW9w0P6I36Ip42cshQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":465284},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"2b51c2b3448a8b1002c633dc129adfc26fd60790","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.8.0_1777273556424_0.38793097122029585","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@iyulab/u-insight","version":"0.8.1","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.8.1","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"0b3ea3cc49818fbde76b05b7010303dd62eb6d4c","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.8.1.tgz","fileCount":7,"integrity":"sha512-BhEKIAi+y4rgYPSDyQMa49TzC+Zxq4kYKnRP6MdrBUqPoiLvtofnflxg+v/W8ddgNiNaH8mtPaFZuSR+LEsu9Q==","signatures":[{"sig":"MEUCIG2DM/S14W6AFc4GSraj4TcY4aeMikZUgsahRX+5G4GHAiEA3rOSTNOB+rBe64cL16HmU0Yy+oPAcSHTAv0f0t9JYOM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":465301},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"136b8881a69458d6e3d418f9f78dd62b0437c5c7","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.8.1_1777386487575_0.5608830768546191","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@iyulab/u-insight","version":"0.9.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.9.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"327850e56119560cdc5b4bccb1ac9546bf9919b0","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.9.0.tgz","fileCount":7,"integrity":"sha512-7SFOlmpM7A8TTJVw6MYtF2A1dfMqvCYZ+4X/VGIATOeh70U77khXNPuJHC1+4WnPUUEg8N+cYR9TBbwXlnjLUw==","signatures":[{"sig":"MEUCIQCH2ncBc5OIsf/PEw4bFuPbyitOuNxM4neE1b8yIPvanwIgVVC9YbqIW6ury8QJLW/vn/8KLk3JBCchsg15/CYh4WM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":504317},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"d225c390b359a221452645cd665e918536bc3995","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.9.0_1777420263819_0.7266125856574694","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"@iyulab/u-insight","version":"0.9.1","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.9.1","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"00b2f13cf2afbd4709847dff18bd8eff0479d5fd","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.9.1.tgz","fileCount":7,"integrity":"sha512-ERVugzfzf9DvPvPSjBfoS4WgoI4NRkzivvXjJUFwZTPPiG2rW46hf0dnkVUwtWl66ue3B6WUc3TGK8/JCy4HKA==","signatures":[{"sig":"MEUCIE9NfYIKDMEHuqNzFh9u7+fuKrxYm8/Sq/cjTfRRR3UDAiEAkDfmcPhamH60FivkKiwnICyCHPlHTDSxGnjcJuqY8eM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":504499},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"ef777a370c1c038f2a09a0a97d3dd5f48909ad83","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.9.1_1777421864486_0.1377755322751606","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@iyulab/u-insight","version":"0.10.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.10.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"31dc3fe2eae85bf946753d52249c96320cccce5e","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.10.0.tgz","fileCount":7,"integrity":"sha512-Bxlrp/p4oJ8HHD/GtBAhBeWikVrWC2nFhX1YApG9sIc04CFD/q6eeOCVymoNH7DzZedUOyz/ZHkOBkd5c0RpeA==","signatures":[{"sig":"MEYCIQCLB6XfBxNlpJAFQGPqj71/TpuhojAOrhtD7D1Zc4zgUwIhAMoZfOT0DcsyJhyas8DutW1cHbU+6u57/nJ73oIaqnG5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":509760},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"63c83ce393075e1d13636bd1acae996d53b7524a","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.10.0_1777549105510_0.6101075424636888","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"@iyulab/u-insight","version":"0.10.1","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.10.1","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"d500e6be338eb37e0dc615d167da5472eb2d0161","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.10.1.tgz","fileCount":7,"integrity":"sha512-bmdgDanFtjXuKGmghrASgkE8F58yJiq98H4Hg/91bbYOphIcEqjtgEGm3r//dVkSDM5q4Qj/Auwe80DTohCJkw==","signatures":[{"sig":"MEQCID83lWz3q0GFPb9Jl9QydL9dsEfq0pFTujW+jI/Jf/TMAiAdDUAfIR0OGvBlz9B3qR3xcBdAeJ1qH4IiWAnYG3xTUg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":502935},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"84bd75607cbc062f7460760eb5c000fbce86af32","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.10.1_1781078450535_0.8558222354930711","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@iyulab/u-insight","version":"0.11.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.11.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"957a358357a1b1313bc66fc805e2d36468f5153d","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.11.0.tgz","fileCount":7,"integrity":"sha512-qDG33UK842DCOeVqcCSe/g29o+Zu9Ypi9/L8YGrQA5iNFQoHc/6b3sG4qZp4PvH5AfMULalsoaFlzQVDQSiQnQ==","signatures":[{"sig":"MEUCIHU4FQ/5cS7Imm+5mdu7P9972Shru4muJ6ChHMLo/qV9AiEA6t7lJpGCFk/+zVhW4Nt1SW6vr6qdhiQPE/HIgAoMK18=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":504110},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"7a1cf4a0d9a507ba9640e286d6d0a9298874b9f5","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.11.0_1781177217492_0.26402027665220595","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@iyulab/u-insight","version":"0.12.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.12.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"ab38206f7d7084ad73bf6e9a014573bfc1a9c57e","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.12.0.tgz","fileCount":7,"integrity":"sha512-2tTSH0GXq7HlTZXOai0xOsPBBCwdblapjlgPeuGKP/SxccSEGLIylcl9OKZsUIRRUdg296tzrGXKQ+umB0X/gA==","signatures":[{"sig":"MEYCIQDIsfiODfYwCGLyCWrAsoJlXmtFOlXb8rFnWadsC6eflwIhAOf89D2g5D7MDc1dDARZyetEmyrQIzdy1qQvZ3oKKyeM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":535584},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","gitHead":"6193f7fc0f1b95b4467b78135fcc0980e69385ae","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.12.0_1781216327825_0.1067675317513217","host":"s3://npm-registry-packages-npm-production"}},"0.12.1":{"name":"@iyulab/u-insight","version":"0.12.1","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.12.1","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"2f5e79890d048fbff4da5a7d4b32b2eb67e40bd0","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.12.1.tgz","fileCount":10,"integrity":"sha512-zQ0aaKeQBoqthSb8RwxZLuoSh5PTSzMbr0ntNx7RsPz/GaUHa+6rISP8qEUGa4REtFPD9+QZ0SJ9tie7rfFpfw==","signatures":[{"sig":"MEQCIDlQTV2C1avlg6eWNncVcBrBqRfusJjixw2hOiAK8P22AiBH7lPcVmD9IrmfLeetSArnayMoTGJkIUPW2doWDv3OtA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1056806},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"}},"gitHead":"f3842004d6e5b89a9a75c92554704e5236257708","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.12.1_1783238161862_0.07007000395317853","host":"s3://npm-registry-packages-npm-production"}},"0.12.2":{"name":"@iyulab/u-insight","version":"0.12.2","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.12.2","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"20745ad04edf1c2b02227f630081d1b435b110f8","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.12.2.tgz","fileCount":10,"integrity":"sha512-gpwJYqGC3yA40NInyzrpEiRcAPuYNyh3KUkW7LlSkyY6CS3seXlM8aUV5yCu0KrGXsCt7QGTUx2dZMBNbaLnmA==","signatures":[{"sig":"MEYCIQDzYFAZ/cGQ6ZTalqXvsUqQeihC5qiHnXxrBDdM/Etg4gIhAPkPF405iHXBybhTEiteEuqEG+GGtg2RldeLU1EZEhlm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1056846},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"b4d3caa6616c1d80e884de05f94df8d3b86f230d","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.12.2_1783238865777_0.1601905338872638","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@iyulab/u-insight","version":"0.13.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.13.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"3e611d1f210fed6bc821bc924fbd6dc6b0ee866e","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.13.0.tgz","fileCount":10,"integrity":"sha512-Lfj+MGHmwqT8BfJ3SpjDvOgNma6eCAO2El1v40bK2UQMOA2lr0mMMMgtLUwegTUH4Yr8mbT8kjS6n8bi7gAVRg==","signatures":[{"sig":"MEYCIQCip2GFKlNrA0xF6ah/YNsLxSGp6pEtnXqTigx/kqY1qQIhAPhiw7UKTzVOVsULPNFZRAhbOlkTyzmubMXsQtja+3HY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1060353},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"611d6933cd9561598ad0835752cdd6727d32763b","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.13.0_1783410565254_0.1892632369087892","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"@iyulab/u-insight","version":"0.14.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.14.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"c7c9a49b8d835f690f52e13977fa4f0ce5b13ca8","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.14.0.tgz","fileCount":10,"integrity":"sha512-sY9EFVzpBfyZx4wZoFDWMHzmFl+dZh7MG2V7j7nwbLe0ow3kGnHPPOokIoSeMuaJSvf/elnkjkyx6pzRDf22xQ==","signatures":[{"sig":"MEUCIQCqn5W+dtMYpA5gEwu+lsAE4fIOCRl//B0iUETGd2gw5AIgU0LYwlX9ULYi53ev3l2Bdj3WzbM+kFJQdRKQFh1NDgE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFqJ4KRBw7XfZuqm2+zOHEpr1RFut5B6xq2K2YVRGqpJAiEA5niuwR3PP7dnCSOq5FHhmM/jqFIpq7PQE7EOKxeY7xA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1078953},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"f8a89fd4b50df61c2d471e01bb2ea55154c9a0d1","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.14.0_1788754219140_0.6407991684127969","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"@iyulab/u-insight","version":"0.15.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.15.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"75edbc3cdc4477c93ce1460141e7a913432c544a","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.15.0.tgz","fileCount":10,"integrity":"sha512-Yf7bg5YR1sZpNhU8LK0VilGPZASDTXHu0O/JTUEZO+PrUS7mXJDpGQcBzMo0ncaL28tr3dWjOdrkGbjF3TqptQ==","signatures":[{"sig":"MEQCIFJtA97NBPqdtM1tLqJq6ntP3Rt55Vn+quuU7qX8REdiAiAwGOqxmt93vcOPbwXk6jI3+4S3+2aoMLKybKqqdCNlRg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDBgxYGUu/7CN1xYfx3PDyj0QYbBQSV0ezYSHb0u39DKAiAijI3l7OMrVkjoW1Z9kDjw4RITA9/u0ADS3p8jRQKm7Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1079452},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"ca6721260ca063fca225c3c67918dbd7779b9d2b","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.15.0_1789028237478_0.06112852478271802","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"@iyulab/u-insight","version":"0.16.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.16.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"d53d65742b1617fce4949ce921dbc6c7e47015a2","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.16.0.tgz","fileCount":10,"integrity":"sha512-JZGb6vT1XCWDMc/Zi2Km3BkPJoV0RAtfYfeowGkoByNvEAT6JUf4pbby21A0NS7U1C8JPG9eue/zXv1FNJvkqw==","signatures":[{"sig":"MEYCIQCWfL/HCClrXYsL5jvdVMUuw04VRrL+KCW4TFFamMNnWgIhAPIBjeRSRgmrATD3vgEQPeImnmrUd7LiEXIWFo1DVUNu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFL/QTWjiVuCN2+RGqRezHFhxFfG+QgmzKGlpcYy3IHgAiBt5zqmG3oW4YjMufkBVgIlBdLVLS6m9z4jTXQ4qTom3w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1079456},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"dc03f1e61a98aef5fcf1f6de7a285b48c680f21f","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.16.0_1789182453607_0.8212160163168902","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"@iyulab/u-insight","version":"0.17.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.17.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"9d11adc6349bf479a19ae48effc0682e0b0aceb7","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.17.0.tgz","fileCount":10,"integrity":"sha512-WzidX4Jxmx3UJgPomz5KHA8VNLhoQBJlZMrVBH65vAnxJ5wN8AjsIeL+/+BMlR+4j/8BEUQKAx/QWm+hr8K5TA==","signatures":[{"sig":"MEUCIQDPT5eUVj7xY9t4RyT/uh+NRW1BHM8LugP+nvqVlQDCjAIgB48eCF+xLKrwBNeL5F653LpQ90EHDogHjeALc5SuhT8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDKc9Fw7t5rll7etCENa09FQG68jVsAALpk2sofRsjXBQIgUMjVGBiT81yIqQXpRMjELIoK61APbZGC7P5IwOyiRug=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1079478},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"0d0a03567123fbdf42ca20956fd0b5c41ae558ce","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.17.0_1789219490442_0.23958263764969723","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"@iyulab/u-insight","version":"0.18.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.18.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"78d17ab857b8b139ed985388450d556930894646","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.18.0.tgz","fileCount":10,"integrity":"sha512-cVlFllFeX/ablOPwQMKtBd6cIglhqqaOp1v6FN04eJb8me/fB9sXIfU/p1cN4JkmPIyYnivwt2ytwIAAYD+G6A==","signatures":[{"sig":"MEUCIQC6euySFuPklKJl3pZxtub3g30EHkFkCPWAo2t0J/GUpwIgbvxF04G80Nvu95ida5xQ9ucIgiJUOFxwiuFKfSdb8uc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCdWPZeinfc2PAEUWFLnevjB12RkOGg14J8Pe1G1vm3MQIhAJU5XyQorm4U+tz9sOmxjaIh+IqHLoVgfEuA7RzHKOyt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1188933},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"18fcfc533b7a34c0cb9ff96bdf9b061b958a5ea2","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.18.0_1789280137518_0.5987489066436833","host":"s3://npm-registry-packages-npm-production"}},"0.19.0":{"name":"@iyulab/u-insight","version":"0.19.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.19.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"79d7ee798f1103ad22e6d35767a147ea140247d4","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.19.0.tgz","fileCount":10,"integrity":"sha512-wFcLSbQw+j8O0Pe5M8AZT8aDBLGuKaM+A+qYbc9sU/LVle7akm/O2A8dRin1MS8nKhTctwPSluDP5TM2af0OTQ==","signatures":[{"sig":"MEYCIQDtLgE8g46sZ+FkLIqOZy4IdkytCJ8UC49AGqGhAkp5pQIhAP2vVYFlE9CENFVF3pLu9bPi+4liMG8EO+1Rb/a+gfvI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCf2mkZU63IaTLlJbNSpgG0vgLyJYqO6y1t64GRS9AIMQIgZATKWPmISaE0f1rgyrbRW7I/Xq4qxjdeija5Ze1++YI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1189456},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"28b1ec7d0c68cac270bc1bdbc9938dcb69210e95","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.19.0_1789428201586_0.28375950178771614","host":"s3://npm-registry-packages-npm-production"}},"0.20.0":{"name":"@iyulab/u-insight","version":"0.20.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.20.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"8a170855d482a8aea213ef511796ee5e18fe1abf","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.20.0.tgz","fileCount":10,"integrity":"sha512-6T66G1kgYWRhcjyLZdz2IXkcAW7VZnL9VtVeI72GlkiSHqv5jVMCCVeF+6NdE5PGJsBUCoVof5SH4GNYM0PW/A==","signatures":[{"sig":"MEQCICWDNzx8RSC0Ydu+7LHz8i6fgXHLgLE7VLUuJSWg44QiAiBytjtrdhZHSq3E+XLDpsSQMLYhM9vhpa6eUBFz2J3JhQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDup6m7/Mhn107ogXY5WOuVpXfssytze83PdASt6UA0GwIgfmQsF2NAy9EGZc6+ipzl/mV8HIFjDTgyP7Kgnld4pUU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1192110},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"ac50ce42e4cc11e2d6eff5c32a4e13f0c52e675c","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.20.0_1789536782484_0.25133798093043525","host":"s3://npm-registry-packages-npm-production"}},"0.20.1":{"name":"@iyulab/u-insight","version":"0.20.1","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.20.1","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"57b0837397881aef577fb741e710ba26a26ce972","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.20.1.tgz","fileCount":10,"integrity":"sha512-RGEBMRmShHRhr26hyi3APezbgyC0iWkRj9MAkQx/8IjgTfnH0GyYh2X/6LfEw5x8/fm7ixalnz9o8rLxB4bxOg==","signatures":[{"sig":"MEUCIQCCmaw7Mg8jKVuNBdHMgj2hZZXMyJCc0IzfLAC7RcSyDAIgZgR60hdLiFLnGX/CjtBxttGZEYe+4RiMKEeQgOm/ITE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHrd0NHFwUSKsbMeCIjqGWFeVqahFctS6Euvfngu7RAzAiEA0HiO2GrFyvCKIB9A/sYPMWasYkYu89OdMD6/x+n4clM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1192110},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"2ac9caa72d4bf1db00c7069ab030ec6029e01cb3","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.20.1_1789559850000_0.7090109368898558","host":"s3://npm-registry-packages-npm-production"}},"0.21.0":{"name":"@iyulab/u-insight","version":"0.21.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.21.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"ac24fd98bcf2296c77fee2e1a100b4368c4acf48","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.21.0.tgz","fileCount":10,"integrity":"sha512-cijS3WBRQLkPMcQoPFARO1wZGTGn4ymZsR6d0zMrP0LC0f9RvqZpfqWPjlItKeb4HdZ08DxqAdjxFryZBxLJFw==","signatures":[{"sig":"MEUCIQCxc/ZulMYzDscfjSQrd2CuGz850IXf4BSGCX4R0gHdCQIgB1MzE1qMZjAGA1/WuCtLRFSP20nxHTlUaLiH5SAcPPs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBfAuiwUM77UVbE9xWQ0kMbZFl5OWQfrFQ47ZereCa5pAiA0f/igNAa+ud9Asc81O7wmP5FQu6rBCFat8ye3gEQ5ng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1210688},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"5164fa43c508475eb578db12b01311ed344c49ff","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.21.0_1789906292956_0.22334308411286075","host":"s3://npm-registry-packages-npm-production"}},"0.22.0":{"name":"@iyulab/u-insight","version":"0.22.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.22.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"2920e6699fb851e86b191b1a1c8d88443ba43d7a","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.22.0.tgz","fileCount":10,"integrity":"sha512-piAkKx/2F4M3Ap6TWEmOx1ILQvw1y+jZ68VBXBODDtLv1gB9ST2T3ypr9IDqadXQYC4jrG4UesoCd2M63Jeyyg==","signatures":[{"sig":"MEUCIQCwEb5WrwjMSDgBw4zEo+HOEzD2aBDp+LGqlaDYfTHkyQIga7p/V1wQNvhf8EVK46X5TOXzQFko/lvjWwL7RjrpKJ0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAtcnK8Pfv0V9Ys+bTr6f8orpwQGzvNhHNmIKXRTP9SmAiEA+bPltEIVnGFS/yymmWrY2PgkHmBoDMIWwKgIb8Za0jI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1211694},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"f3b2add09e0bc8d6dd9efc570179b6ac8e484536","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.22.0_1790302699605_0.30256757764288644","host":"s3://npm-registry-packages-npm-production"}},"0.23.0":{"name":"@iyulab/u-insight","version":"0.23.0","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.23.0","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"8ce241f679e3fc4c0f3a8598e168e24ff86d713a","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.23.0.tgz","fileCount":10,"integrity":"sha512-8R4bY09ClT2Vf/9WzEzdMw4J866WKV9e7oN3cBf91MSpgrJvVbLPjx+CQ0b/7mfK/i1Nn4H7aYJyY4/bJBZmkg==","signatures":[{"sig":"MEUCIQD767UvzrFQaQW8LAuKfA9NnhbH6KwHcKTsTEN6VwdVHQIgL2f/7RAG1vHX2iSEhOmQDQ6/mvaJQ3gGjuwRQaeuVtI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBj/z98zwJ8+cfirw3QLZ0EeNlWCRgaew3+huGe7WDlcAiB9KXRglEIjxdhzF0Tr9oH70jsKXME87K5MlJP9WH87Jg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1246095},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"8e776fceebfd8b666f4bddba2c0a7c0946999065","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.23.0_1790641422618_0.7871284140425907","host":"s3://npm-registry-packages-npm-production"}},"0.23.1":{"name":"@iyulab/u-insight","version":"0.23.1","keywords":["statistics","profiling","analytics","ffi"],"license":"MIT","_id":"@iyulab/u-insight@0.23.1","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"homepage":"https://github.com/iyulab/u-insight#readme","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"31e4b37398b8238348a88e796fcddb80a39020a3","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.23.1.tgz","fileCount":10,"integrity":"sha512-nql1cHDfbjGU0YD0qrJCudYamX+4WZ2Ey6eMrcOinVpHCr9jXsbPrhEzuQoo8b8fhDCDIGcUvCgSnqT5irKjYA==","signatures":[{"sig":"MEUCIQDT+JAfJhCXVnRRjxaAdVo1YmlWh8+QBS8eBgvpjscvggIgdKxNUBAUI2p47AfEsA06jIpbm4HaHOFQHPrVPUIlKLk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDuCGJaZFl07sZBNKIZJWUPzbH8kpc+cGBd81ZfrkEx1AIhAOfCUq4ONzGsXloZvSMQufJZ78aQuTjoS16ZXAAABgjX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1246083},"main":"u_insight.js","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"30c48201314ff56bef60947b71cf284e646bdf36","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/u-insight_0.23.1_1790759143211_0.39613580345938426","host":"s3://npm-registry-packages-npm-production"}},"0.24.0":{"_id":"@iyulab/u-insight@0.24.0","bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"dist":{"shasum":"01e8a0b2fb5a360b508af4fe4a6d8d1e16358480","tarball":"https://registry.npmjs.org/@iyulab/u-insight/-/u-insight-0.24.0.tgz","fileCount":10,"integrity":"sha512-7vzDLMVjYxt/dGVJ7zD7t+S3XajFwwilJJMTOAk0AK9RMDgGiZHPHEVGwjkm27t0O3uGZ5ECg9Y8QZPusWk/mw==","signatures":[{"sig":"MEQCIA5lqR3wPqElNaPUQ6stP9Eb3JELyDs7zuy24pCmjY1QAiBrniNdg8RHj+ea1eHvEtHY60WJWaOTB4KLdzB5d9MAyA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCDrFd6rKP+86lsGtyrYmFsiuWvSa4CCZ1pulTgwXibkwIhAIdnP8uoDew9mnJjcFYJBDNbrfk1eOC/k+VKEes6pPqP"}],"unpackedSize":1325461},"main":"u_insight.js","name":"@iyulab/u-insight","type":"module","types":"u_insight.d.ts","exports":{".":{"node":{"types":"./node/u_insight.d.cts","default":"./node/u_insight.cjs"},"types":"./u_insight.d.ts","default":"./u_insight.js"},"./package.json":"./package.json"},"gitHead":"59d0fa7fab6ebf644a1d6895d5f21b55278f0380","license":"MIT","version":"0.24.0","_npmUser":{"name":"caveman","email":"achunja@gmail.com"},"homepage":"https://github.com/iyulab/u-insight#readme","keywords":["statistics","profiling","analytics","ffi"],"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"_npmVersion":"10.8.2","description":"Statistical analysis and data profiling engine with C FFI bindings.","directories":{},"maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"sideEffects":["./u_insight.js","./snippets/*","./node/u_insight.cjs"],"_nodeVersion":"20.20.2","collaborators":["iyulab"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/u-insight_0.24.0_1790770424433_0.16393593665536654"}}},"time":{"created":"2026-03-05T12:58:56.118Z","modified":"2026-09-30T12:13:44.745Z","0.3.1":"2026-03-05T12:58:56.335Z","0.4.0":"2026-03-08T10:55:44.941Z","0.5.0":"2026-03-18T00:34:53.050Z","0.6.0":"2026-03-23T16:20:10.941Z","0.7.0":"2026-04-03T02:03:43.765Z","0.8.0":"2026-04-27T07:05:56.638Z","0.8.1":"2026-04-28T14:28:07.799Z","0.9.0":"2026-04-28T23:51:04.003Z","0.9.1":"2026-04-29T00:17:44.802Z","0.10.0":"2026-04-30T11:38:25.703Z","0.10.1":"2026-06-10T08:00:50.691Z","0.11.0":"2026-06-11T11:26:57.648Z","0.12.0":"2026-06-11T22:18:47.993Z","0.12.1":"2026-07-05T07:56:02.031Z","0.12.2":"2026-07-05T08:07:45.916Z","0.13.0":"2026-07-07T07:49:25.408Z","0.14.0":"2026-09-07T04:10:19.255Z","0.15.0":"2026-09-10T08:17:17.600Z","0.16.0":"2026-09-12T03:07:33.712Z","0.17.0":"2026-09-12T13:24:50.528Z","0.18.0":"2026-09-13T06:15:37.657Z","0.19.0":"2026-09-14T23:23:21.683Z","0.20.0":"2026-09-16T05:33:02.578Z","0.20.1":"2026-09-16T11:57:30.097Z","0.21.0":"2026-09-20T12:11:33.056Z","0.22.0":"2026-09-25T02:18:19.707Z","0.23.0":"2026-09-29T00:23:42.723Z","0.23.1":"2026-09-30T09:05:43.402Z","0.24.0":"2026-09-30T12:13:44.535Z"},"bugs":{"url":"https://github.com/iyulab/u-insight/issues"},"license":"MIT","homepage":"https://github.com/iyulab/u-insight#readme","keywords":["statistics","profiling","analytics","ffi"],"repository":{"url":"git+https://github.com/iyulab/u-insight.git","type":"git"},"description":"Statistical analysis and data profiling engine with C FFI bindings.","maintainers":[{"name":"caveman","email":"achunja@gmail.com"},{"name":"iyujune","email":"junehyung@iyulab.com"}],"readme":"# u-insight\n\n[![Crates.io](https://img.shields.io/crates/v/u-insight.svg)](https://crates.io/crates/u-insight)\n[![NuGet](https://img.shields.io/nuget/v/UInsight.svg)](https://www.nuget.org/packages/UInsight)\n[![docs.rs](https://docs.rs/u-insight/badge.svg)](https://docs.rs/u-insight)\n[![CI](https://github.com/iyulab/u-insight/actions/workflows/ci.yml/badge.svg)](https://github.com/iyulab/u-insight/actions/workflows/ci.yml)\n\nA statistical analysis and data profiling engine in Rust with C FFI bindings.\n\n## What's New in 0.20.0\n\n- **Box-Cox capability reports when its λ search hit a range limit**\n  (`lambda_at_bound`), searches `[-5, 5]` by default or a range you pass, and\n  runs without specification limits (λ only). C#\n  `BoxCoxCapability(data, usl, lsl, lambdaRange)`.\n- Normal tail probabilities (Anderson-Darling, rank-test p-values, sigma ↔ PPM)\n  are tail-precise (`u-numflow` 0.6).\n\n## What's New in 0.18.0\n\n- **Univariate time-series primitives**, pure Rust on every transport\n  (`u-analytics` 0.11 / `u-numflow` 0.5): `insight_estimate_period` — the\n  dominant period of a series (AutoPeriod: permutation-thresholded periodogram\n  peaks refined on the autocorrelation function, deterministic) — and\n  `insight_spectral_residual` — one-shot anomaly scoring by spectral residual\n  saliency (Ren et al. 2019) with an expected value and a coverage band per\n  point. C# `EstimatePeriod` / `SpectralResidual(data, options?)`; WASM\n  `estimate_period` / `spectral_residual`.\n\n## What's New in 0.14.0\n\n- **26 new FFI functions** exposing `u-analytics` domains that were already a\n  dependency but not previously reachable from outside this crate: Mann-Kendall\n  trend test, kernel density estimation, the full SPC control chart family\n  (X-bar-R/S, Individual-MR, P/NP/C/U, Laney P'/U', G/T), process capability\n  (Cp/Cpk/Pp/Ppk/Cpm, Box-Cox, percentile-based, sigma↔PPM), and Weibull\n  reliability analysis (MLE/MRR fitting, survival, hazard, MTBF, B-life). See\n  the C FFI section below and `CHANGELOG.md` for the full function list.\n- Matching C# bindings for all of the above, including the binding's first\n  `double?`-based optional parameters/return values (`ProcessCapability`,\n  `PpmToSigma`, etc.), converting to/from `NaN` only at the P/Invoke boundary.\n\n## What's New in 0.9.1\n\n- **BREAKING — Rust**: `InsightError::NonNumericColumn` variant removed. The 0.9.0 audit redirected all internal call sites to `DegenerateData`, leaving the variant unused. Removed per `Delete over deprecate` policy. External `match` arms over `InsightError` must drop the corresponding branch.\n\n## What's New in 0.9.0\n\n- **Kendall tau-b correlation** added to `CorrelationMethod` (Pearson / Spearman / Kendall)\n- **Outlier fences exposed** on `OutlierResult` — `lower_fence`, `upper_fence`, `center`, `spread`\n- **`detect_outliers_slice(&[f64], method)`** helper for raw-slice input\n- **`vif_analysis()` and `condition_number()`** standalone multicollinearity diagnostics\n- **WASM**: `correlation_matrix` accepts optional `_method` field (`\"pearson\"` | `\"spearman\"` | `\"kendall\"`); new `detect_univariate_outliers`, `vif_diagnostic`, `condition_number_diagnostic`\n- **C#**: `CorrelationMethodKind` enum + `Correlate(data, method)` parameter\n- **BREAKING — Rust**: Non-finite numeric inputs now return `InsightError::DegenerateData` (was `NonNumericColumn`); audit covered 11 call sites\n- **BREAKING — Rust**: `OutlierResult` gained 4 new fields (exhaustive pattern matches must be updated)\n- **BREAKING — FFI**: `insight_correlation` signature gained a `method: u32` parameter (use `INSIGHT_CORR_PEARSON` = 0 to keep prior behaviour)\n- **BREAKING — C#**: `Correlate(...)` now takes an optional `CorrelationMethodKind` parameter (default `Pearson` keeps existing call-sites compiling)\n\n## Overview\n\nu-insight transforms raw tabular data into actionable statistical insights. It operates in two distinct layers with **opposite assumptions about input data quality**:\n\n```text\nCSV (raw)\n  │\n  ├─→ Profiling ─→ \"What is the state of this data?\"\n  │     Tolerates dirty data (missing values, type mismatches expected)\n  │\n  │   (external preprocessing)\n  │\n  └─→ Analysis  ─→ \"What can we learn from this data?\"\n        Requires clean numeric data (no NaN, no missing)\n```\n\nBuilt on `u-analytics` (statistical algorithms), `u-numflow` (math primitives).\n\n## Modules\n\n### Data Layer\n\n| Module | Description |\n|--------|-------------|\n| `dataframe` | Column-major tabular data model (DataFrame, Column, DataType) |\n| `csv_parser` | CSV parsing with automatic type inference |\n| `error` | Error types (InsightError) |\n\n### Profiling Layer (dirty data tolerated)\n\n| Module | Description |\n|--------|-------------|\n| `profiling` | Column-level and dataset-level data profiling — descriptive stats, missing analysis, outlier flagging (IQR/Z-score/Modified Z-score), diagnostic flags |\n\n### Analysis Layer (clean data required)\n\n| Module | Description |\n|--------|-------------|\n| `analysis` | Correlation (Pearson/Spearman), regression (simple/multiple OLS), Cramer's V contingency analysis |\n| `clustering` | K-Means++ (auto-K, Gap Statistic), Mini-Batch K-Means, DBSCAN, Hierarchical Agglomerative (Single/Complete/Average/Ward), HDBSCAN |\n| `distribution` | ECDF, histogram bins (Sturges/Scott/FD), QQ-plot, normality tests (KS, Jarque-Bera, Shapiro-Wilk, Anderson-Darling), Grubbs test, distribution fitting |\n| `pca` | Principal Component Analysis with auto-scaling option |\n| `isolation_forest` | Isolation Forest anomaly detection (Liu et al. 2008) |\n| `lof` | Local Outlier Factor (LOF) density-based anomaly detection |\n| `mahalanobis` | Mahalanobis distance multivariate outlier detection |\n| `feature_importance` | Variance threshold, correlation filter, VIF, condition number, composite importance, ANOVA F-test selection, Mutual Information, Permutation Importance |\n\n### FFI Layer\n\n| Module | Description |\n|--------|-------------|\n| `ffi` | C FFI bindings — 32 functions, 20 `#[repr(C)]` structs, auto-generated C header via cbindgen |\n\n## Quick Start\n\n```rust\nuse u_insight::csv_parser::CsvParser;\nuse u_insight::profiling::profile_dataframe;\n\n// 1. Parse CSV\nlet csv = \"name,value,active\\nAlice,1.5,true\\nBob,2.3,false\\nCharlie,3.1,true\\n\";\nlet df = CsvParser::new().parse_str(csv).unwrap();\n\n// 2. Profile\nlet profiles = profile_dataframe(&df);\n```\n\n### Clustering\n\n```rust\nuse u_insight::clustering::{kmeans, dbscan, KMeansConfig, DbscanConfig};\n\nlet data = vec![\n    vec![0.0, 0.0], vec![0.5, 0.5],\n    vec![10.0, 10.0], vec![10.5, 10.5],\n];\n\n// K-Means\nlet km = kmeans(&data, &KMeansConfig::new(2)).unwrap();\nassert_eq!(km.k, 2);\n\n// DBSCAN\nlet db = dbscan(&data, &DbscanConfig::new(1.5, 2)).unwrap();\nassert_eq!(db.n_clusters, 2);\n```\n\n### Distribution Analysis\n\n```rust\nuse u_insight::distribution::{distribution_analysis, DistributionConfig};\n\nlet data: Vec<f64> = (0..50).map(|i| (i as f64 - 25.0) * 0.2).collect();\nlet result = distribution_analysis(&data, &DistributionConfig::default()).unwrap();\nprintln!(\"Normal: {}\", result.normality.is_normal);\n```\n\n## C FFI\n\nu-insight builds as `cdylib` + `staticlib` for cross-language interop. A C header (`u_insight.h`) is auto-generated by cbindgen at build time.\n\n### Profiling\n\n| Function | Description |\n|----------|-------------|\n| `insight_profile_csv` | Profile a CSV string → opaque context |\n| `insight_profile_json` | Profile a JSON string → opaque context |\n| `insight_profile_free` | Free profile context |\n| `insight_profile_row_count` | Row count from profile |\n| `insight_profile_col_count` | Column count from profile |\n| `insight_profile_column` | Get column summary |\n\n### Clustering\n\n| Function | Description |\n|----------|-------------|\n| `insight_kmeans` | K-Means++ clustering |\n| `insight_mini_batch_kmeans` | Mini-Batch K-Means clustering |\n| `insight_dbscan` | DBSCAN density-based clustering |\n| `insight_hierarchical` | Hierarchical Agglomerative clustering (4 linkages) |\n| `insight_hdbscan` | HDBSCAN clustering with membership probabilities |\n| `insight_gap_statistic` | Gap statistic for optimal K selection |\n| `insight_silhouette` | Silhouette score for cluster validation |\n\n### Dimensionality Reduction\n\n| Function | Description |\n|----------|-------------|\n| `insight_pca` | Principal Component Analysis |\n\n### Anomaly Detection\n\n| Function | Description |\n|----------|-------------|\n| `insight_isolation_forest` | Isolation Forest anomaly detection |\n| `insight_lof` | Local Outlier Factor detection |\n| `insight_mahalanobis` | Mahalanobis distance outlier detection |\n\n### Statistical Analysis\n\n| Function | Description |\n|----------|-------------|\n| `insight_correlation` | Pearson correlation matrix |\n| `insight_regression` | Simple linear regression |\n| `insight_cramers_v` | Cramer's V contingency analysis |\n\n### Distribution\n\n| Function | Description |\n|----------|-------------|\n| `insight_distribution` | Normality testing (KS, JB, SW, AD) |\n\n### Changepoint Detection\n\n| Function | Description |\n|----------|-------------|\n| `insight_pelt` | PELT changepoint detection (univariate) |\n| `insight_pelt_multi` | PELT changepoint detection (multivariate) |\n\n### Time Series\n\n| Function | Description |\n|----------|-------------|\n| `insight_estimate_period` | Dominant period of a series (AutoPeriod); `period` 0 = none, candidates listed |\n| `insight_free_period_estimate` | Frees the candidates of a `CPeriodEstimate` |\n| `insight_spectral_residual` | Spectral residual anomaly scoring (Ren et al. 2019); null options = paper defaults |\n| `insight_free_spectral_residual_result` | Frees the points of a `CSpectralResidualResult` |\n\n### Trend & Density Estimation\n\n| Function | Description |\n|----------|-------------|\n| `insight_mann_kendall` | Mann-Kendall trend test with Sen's slope |\n| `insight_kde` | Gaussian kernel density estimation (Silverman/Scott/manual bandwidth) |\n\n### SPC — Variables Control Charts\n\n| Function | Description |\n|----------|-------------|\n| `insight_xbar_r_chart` | X-bar-R control chart (subgroup mean + range) |\n| `insight_xbar_s_chart` | X-bar-S control chart (subgroup mean + std dev) |\n| `insight_individual_mr_chart` | Individual-MR control chart |\n\n### SPC — Attributes Control Charts\n\n| Function | Description |\n|----------|-------------|\n| `insight_p_chart` | P chart (proportion nonconforming) |\n| `insight_np_chart` | NP chart (count nonconforming, constant sample size) |\n| `insight_c_chart` | C chart (defect count, constant area) |\n| `insight_u_chart` | U chart (defects per unit, variable area) |\n| `insight_laney_p_chart` | Laney P' chart (overdispersion-adjusted) |\n| `insight_laney_u_chart` | Laney U' chart (overdispersion-adjusted) |\n| `insight_g_chart` | G chart (rare-event, geometric distribution) |\n| `insight_t_chart` | T chart (rare-event, exponential distribution) |\n\n### Process Capability\n\n| Function | Description |\n|----------|-------------|\n| `insight_process_capability` | Standard capability indices (Cp/Cpk/Pp/Ppk/Cpm) |\n| `insight_boxcox_capability` | Non-normal capability via Box-Cox transformation |\n| `insight_percentile_capability` | Percentile-based capability (ISO 22514-2) |\n| `insight_sigma_to_ppm` | Sigma quality level → PPM defect rate |\n| `insight_ppm_to_sigma` | PPM defect rate → sigma quality level |\n\n### Weibull Reliability\n\n| Function | Description |\n|----------|-------------|\n| `insight_weibull_mle` | Weibull parameter fitting (Maximum Likelihood Estimation) |\n| `insight_weibull_mrr` | Weibull parameter fitting (Median Rank Regression) |\n| `insight_weibull_reliability` | Reliability (survival) function R(t) |\n| `insight_weibull_hazard_rate` | Hazard (instantaneous failure) rate |\n| `insight_weibull_mtbf` | Mean Time Between Failures |\n| `insight_weibull_time_to_reliability` | Time at which reliability drops to a given level |\n| `insight_weibull_b_life` | B-life (time at which a given fraction has failed) |\n\n### Feature Importance\n\n| Function | Description |\n|----------|-------------|\n| `insight_feature_importance` | Composite feature importance scores |\n| `insight_anova_select` | ANOVA F-test feature selection |\n| `insight_mutual_info` | Mutual information feature ranking |\n| `insight_permutation_importance` | Permutation importance for regression |\n\n### Memory Management\n\n| Function | Description |\n|----------|-------------|\n| `insight_free_labels` | Free u32 label arrays |\n| `insight_free_i32_array` | Free i32 arrays |\n| `insight_free_f64_array` | Free f64 arrays |\n| `insight_free_anova_features` | Free ANOVA feature arrays |\n| `insight_free_mi_features` | Free MI feature arrays |\n| `insight_free_perm_features` | Free permutation importance arrays |\n| `insight_free_pelt_result` | Free PELT changepoint results |\n| `insight_free_kde_result` | Free KDE results |\n| `insight_free_variables_chart_result` | Free variables control chart results |\n| `insight_free_attribute_chart_result` | Free attributes control chart results |\n| `insight_free_laney_chart_result` | Free Laney P'/U' chart results |\n| `insight_free_rare_event_chart_result` | Free G/T chart results |\n\n### Error & Version\n\n| Function | Description |\n|----------|-------------|\n| `insight_last_error` | Last error message (thread-local) |\n| `insight_last_error_parameter` | Name of the argument or option the last `INSIGHT_ERR_INVALID_PARAM` is about (`chi2_quantile`, `threshold`, …), or null (thread-local) |\n| `insight_clear_error` | Clear error state |\n| `insight_version` | Library version string |\n\nAll FFI functions that accept data pointers use `catch_unwind` to prevent panics from crossing the FFI boundary. A handful of pure closed-form scalar conversions (e.g. `insight_sigma_to_ppm`, `insight_weibull_reliability`) skip the `catch_unwind`/error-code ceremony and return the value directly, since they cannot panic and have no data to validate.\n\n## C# Binding (UInsight)\n\nInstall via NuGet — native libraries are bundled automatically:\n\n```bash\ndotnet add package UInsight\n```\n\n```csharp\nusing UInsight;\n\nusing var client = new InsightClient();\nConsole.WriteLine(client.GetVersion());\n\nvar data = new double[,] { {0,0}, {1,1}, {10,10}, {11,11} };\nvar result = client.KMeans(data, k: 2);\nConsole.WriteLine($\"K={result.K}, WCSS={result.Wcss:F2}\");\n```\n\nThe binding is in `bindings/csharp/UInsight/` with:\n\n- `Interop/NativeLibrary.cs` — `[LibraryImport]` declarations for all 67 FFI functions\n- `Interop/NativeStructs.cs` — `[StructLayout]` mappings for all 35 C structs\n- `InsightClient.cs` — High-level managed API (automatic memory management)\n- `InsightException.cs` — Error code to exception conversion; `Category` classifies the error and `Parameter` names the argument or option an invalid-parameter error is about\n\n## Test Status\n\n```text\n474 lib tests + 53 doc-tests = 527 total\n0 clippy warnings\nBuild: lib + cdylib + staticlib\nC header: auto-generated via cbindgen (35 structs, 67 functions)\n```\n\n## Scope & Non-Goals\n\n**In Scope:**\n- Data profiling (dirty data → quality report + diagnostic flags)\n- Statistical analysis (clean data → patterns + relationships)\n- Correlation, regression, clustering, PCA, anomaly detection\n- Feature importance and selection (ANOVA, MI, Permutation)\n- Distribution analysis and normality testing\n- C FFI for cross-language use\n- C# binding (UInsight NuGet package)\n\n**Out of Scope:**\n- Visualization / charting\n- Data cleaning / transformation / imputation\n- ML model training / deployment\n- Deep learning\n\n## Requirements\n\n- Rust 1.85+\n- Dependencies: `u-analytics`, `u-numflow`\n\n## WebAssembly / npm\n\nAvailable as an npm package via [wasm-pack](https://rustwasm.github.io/wasm-pack/).\n\n```bash\nnpm install @iyulab/u-insight\n```\n\n### Quick Start\n\n```javascript\nimport { describe, kmeans } from '@iyulab/u-insight';\n\nconst stats = describe({ col1: [1, 2, 3], col2: [4, 5, 6] });\n```\n\n### TypeScript\n\nEvery exported function declares its parameter and return types, and the\ndeclarations are generated from the same structs the binding reads and\nserialises, so they cannot drift from what it actually accepts and returns:\n\n```ts\nexport function isolation_forest(data: number[][], config: IsolationForestConfigDto): IsolationForestDto;\n\nexport interface IsolationForestDto {\n    scores: number[];\n    anomalies: boolean[];   // a per-point mask, not a list of indices\n    threshold: number;\n    anomaly_count: number;\n    anomaly_fraction: number;\n}\n```\n\nAn optional field is declared `T | undefined`, which is what the binding\nsends. Nothing needs an `as` cast -- and a wrong assumption about a result's\nshape is a compile error rather than something that renders incorrectly.\n\nThe same holds on the way in: a misspelt option (`linkage: \"centroid\"`,\n`method: \"mutual-info\"`, `bin_method: \"sturgess\"`), a field a configuration\ndoes not have, or a flat array where a matrix belongs does not compile.\nColumn-major inputs are declared by hand, since their keys are your column\nnames: `DescribeInput`, `CorrelationInput` (with `_method`), `VifInput` (with\n`_threshold`) and `Record<string, number[]>`.\n\nThe binding still validates every input at the boundary, for JavaScript\ncallers and for values that reach it through a cast.\n\n### Errors\n\nA refusal throws an `Error` whose `message` is readable text and which carries\na `code` naming the reason, next to the values behind it — so a program can\npoint at what to change without parsing the message:\n\n```js\nimport { hierarchical } from '@iyulab/u-insight';\n\ntry {\n  hierarchical([[0, 0], [1, 1], [5, 5]], { linkage: 'centroid', n_clusters: 2 });\n} catch (err) {\n  console.log(err.code, err.parameter, err.got, err.expected);\n  // unknown_option linkage centroid [ 'single', 'complete', 'average', 'ward' ]\n}\n```\n\n| `code` | Fields | Meaning |\n|---|---|---|\n| `unknown_option` | `parameter`, `got`, `expected` | A `linkage`, `method`, `bin_method` or `_method` that names none of the supported values |\n| `missing_option` | `parameter`, `expected` | A `hierarchical` config with neither `n_clusters` nor `distance_threshold` |\n| `invalid_option` | `parameter` | An option value the analysis refuses (a non-positive `threshold`, a `_threshold` that is not a number, …) |\n| `parameter_out_of_range` | `parameter` (and `index`, `min`, `max`, `got` where they apply) | A `spectral_residual` option outside its domain, or a `silhouette` label `≥ k` |\n| `insufficient_data` | `min`, `got` (and `parameter`) | Fewer rows or observations than the method needs |\n| `value_not_finite` | `parameter`, `index` | A NaN or infinity in a series |\n| `dimension_mismatch` | `expected`, `got` (and `parameter`) | Lengths that have to agree do not (`labels` vs data rows, …) |\n| `empty_input` | `parameter` | An input with no columns |\n| `missing_values` | `column`, `count` | A column with missing values where the analysis needs complete data |\n| `degenerate_data` | — | Constant columns, a singular matrix, … |\n| `column_not_found` | `column` | A column name the data does not have |\n| `computation_failed` | `operation` | A numerical step that did not converge or produced no result |\n| `malformed_input` | `parameter` (and `column`) | An argument of the wrong shape or type, a non-numeric column entry, or a JSON string |\n\n### Functions\n\n#### `describe(data) -> [ColumnResult]`\n\nDescriptive statistics per column. Input: column-major `{ \"col1\": [1,2,3] }`.\n\n**Output:** Array of `{ name, data_type, numeric: { count, min, max, mean, median, std_dev, variance, skewness, kurtosis, q1, q3, iqr, p5, p95, ... } }`.\n\n#### `correlation_matrix(data) -> CorrelationResult`\n\nPearson correlation matrix. Input: column-major `{ \"col1\": [1,2,3], \"col2\": [4,5,6] }`.\n\n**Output:**\n```json\n{ \"names\": [\"col1\",\"col2\"], \"matrix\": [1,0.99,0.99,1], \"n\": 2, \"high_pairs\": [{ \"col_a\": \"col1\", \"col_b\": \"col2\", \"r\": 0.99, \"p_value\": 0.01 }] }\n```\n\n#### `kmeans(data, k) -> KMeansResult`\n\nK-Means++ clustering on row-major data `[[x,y,...], ...]`.\n\n**Output:**\n```json\n{ \"k\": 3, \"labels\": [0,0,1,1,2,2], \"centroids\": [[...]], \"wcss\": 5.2, \"iterations\": 12, \"cluster_sizes\": [2,2,2] }\n```\n\nClusters are numbered by first appearance — the first point is in cluster 0, the first point outside it in cluster 1, and so on; `centroids` and `cluster_sizes` follow that numbering. `dbscan` and `hierarchical` number their clusters the same way, so the same group gets the same number whichever method found it.\n\n#### `silhouette(data, labels, k) -> SilhouetteResult`\n\nSilhouette analysis for an existing clustering assignment. Works with any clustering output (`kmeans`, `dbscan`, `hierarchical`, etc.). `data` is row-major `[[x,y,...], ...]`, `labels` is one cluster id per row (each `< k`), `k` is the number of distinct clusters. O(n²) — use sparingly on very large inputs.\n\n**Output:**\n```json\n{ \"avg\": 0.74, \"per_sample\": [0.81, 0.79, 0.62, ...] }\n```\n\n`avg` ranges from -1 (wrong cluster) to +1 (well-separated); singleton-cluster points report 0.0 in `per_sample`.\n\n#### `pca(data, config) -> PcaResult`\n\nPrincipal Component Analysis on row-major data. `config`: `{ \"n_components\": 2 }` or `{ \"n_components\": 2, \"auto_scale\": false }`.\n\n**Config fields:**\n- `n_components` — number of components to keep.\n- `auto_scale` — standardise each column before the decomposition (correlation-matrix PCA; default `true`, the same default as the C# binding). Set `false` for covariance-matrix PCA, where a column in large units dominates the leading components. `stds` in the output are the scales used (all `1` when `false`).\n\n**Output:**\n```json\n{ \"n_components\": 2, \"n_features\": 4, \"eigenvalues\": [3.1,0.9], \"explained_variance_ratio\": [0.77,0.23], \"cumulative_variance_ratio\": [0.77,1.0], \"loadings\": [[...]], \"scores\": [[...]], \"means\": [...], \"stds\": [...] }\n```\n\n#### `dbscan(data, config) -> DbscanResult`\n\nDBSCAN density-based clustering. `config`: `{ \"epsilon\": 1.5, \"min_samples\": 3 }`.\n\n**Output:**\n```json\n{ \"labels\": [0,0,null,1,1], \"n_clusters\": 2, \"noise_count\": 1, \"cluster_sizes\": [2,2], \"core_points\": [true,true,false,true,true] }\n```\n\n#### `hierarchical(data, config) -> HierarchicalResult`\n\nHierarchical agglomerative clustering (nearest-neighbor-chain, **O(n²)** time / O(n²) memory). `config`: `{ \"linkage\": \"ward\", \"n_clusters\": 3 }` or `{ \"linkage\": \"single\", \"distance_threshold\": 5.0 }`.\n\n**Config fields:**\n- `linkage` — `\"single\" | \"complete\" | \"average\" | \"ward\"` (default `\"ward\"`). Any other name is refused.\n- `n_clusters` — flat clusters to extract (mutually exclusive with `distance_threshold`).\n- `distance_threshold` — dendrogram cut height (mutually exclusive with `n_clusters`).\n- `max_points` — memory guard; inputs with more points are rejected before allocating the O(n²) distance matrix. Omit for the default (`10000`, ≈400 MB matrix); set `0` to disable. Raise it for large native batches; lower it for tight memory (e.g. a browser tab).\n\n```js\n// large dataset on a memory-constrained page: cap it explicitly\nhierarchical(data, { linkage: \"ward\", n_clusters: 3, max_points: 5000 });\n```\n\n**Output:**\n```json\n{ \"merges\": [{ \"cluster_a\": 0, \"cluster_b\": 1, \"distance\": 1.2, \"size\": 2 }], \"labels\": [0,0,1,1,2], \"n_clusters\": 3 }\n```\n\n#### `isolation_forest(data, config) -> IsolationForestResult`\n\nIsolation Forest anomaly detection. `config`: `{ \"n_estimators\": 100, \"contamination\": 0.1, \"seed\": 42 }`.\n\n**Output:**\n```json\n{ \"scores\": [0.45, 0.82], \"anomalies\": [false, true], \"threshold\": 0.65, \"anomaly_count\": 1, \"anomaly_fraction\": 0.5 }\n```\n\n#### `lof(data, config) -> LofResult`\n\nLocal Outlier Factor anomaly detection. `config`: `{ \"k\": 20, \"threshold\": 1.5 }`.\n\n**Output:**\n```json\n{ \"scores\": [1.0, 2.3], \"anomalies\": [false, true], \"threshold\": 1.5, \"anomaly_count\": 1, \"anomaly_fraction\": 0.5 }\n```\n\n#### `distribution_analysis(data, config) -> DistributionResult`\n\nDistribution analysis on a 1-D array. `config`: `{ \"bin_method\": \"freedman_diaconis\", \"bins\": null, \"significance_level\": 0.05, \"compute_ecdf\": true, \"compute_histogram\": true, \"compute_qq_plot\": true, \"fit_distributions\": false }`.\n\n- `bin_method`: `\"sturges\" | \"scott\" | \"freedman_diaconis\"` — automatic bin count rule (default `\"freedman_diaconis\"`). Any other name is refused, with or without `bins`.\n- `bins` (optional, integer >= 1): explicit histogram bin count. When set it takes precedence over `bin_method`, and the histogram `method` field echoes `\"Fixed(n)\"`.\n\n**Output:**\n```json\n{ \"n\": 100, \"ecdf\": { \"values\": [...], \"probabilities\": [...] }, \"histogram\": { \"n_bins\": 10, \"bin_width\": 0.5, \"edges\": [...], \"counts\": [...] }, \"qq_plot\": { \"theoretical\": [...], \"sample\": [...] }, \"normality\": { \"shapiro_wilk\": { \"statistic\": 0.98, \"p_value\": 0.45, \"rejected\": false }, \"is_normal\": true }, \"fits\": [] }\n```\n\n#### `regression(data) -> RegressionResult`\n\nOLS regression analysis.\n\n**Input:**\n```json\n{ \"predictors\": { \"x1\": [1,2,3,4,5] }, \"target\": [2.1, 3.9, 6.1, 7.9, 10.1], \"target_name\": \"y\" }\n```\n\n**Output:**\n```json\n{ \"target_name\": \"y\", \"predictor_names\": [\"x1\"], \"r_squared\": 0.99, \"adj_r_squared\": 0.99, \"coefficients\": [0.1, 2.0], \"p_values\": [0.9, 0.0001], \"vif\": [1.0], \"f_p_value\": 0.0001 }\n```\n\n#### `feature_importance(data) -> FeatureImportanceResult`\n\nFeature importance via permutation, ANOVA, or mutual information.\n\n**Input:**\n```json\n{ \"features\": { \"f1\": [1,2,3], \"f2\": [5,4,3] }, \"target\": [0,0,1], \"method\": \"permutation\", \"n_repeats\": 5, \"seed\": 42 }\n```\n\n**Output:**\n```json\n{ \"method\": \"permutation\", \"features\": [{ \"name\": \"f1\", \"index\": 0, \"score\": 0.8, \"std_dev\": 0.1 }], \"baseline_score\": 0.5 }\n```\n\n#### `estimate_period(data) -> PeriodEstimate`\n\nDominant period of a univariate series — AutoPeriod (Vlachos, Yu & Castelli\n2005): peaks of the detrended, zero-padded periodogram above a permutation\nthreshold (100 seeded shuffles, so the estimate is deterministic), each refined\non the autocorrelation function to the integer lag that is a local maximum\nabove the `1.96/√n` bound. At least 8 finite values.\n\n**Input:** `{ \"data\": [0, 1, 2, 3, 4, 5, 6, 0, 1, 2, 3, 4, 5, 6, 0, 1] }`\n\n**Output:**\n```json\n{ \"period\": 7, \"candidates\": [{ \"period\": 7, \"acf\": 0.71, \"bin\": 18, \"power\": 21.3, \"power_share\": 0.62 }],\n  \"n\": 16, \"acf_threshold\": 0.49, \"power_threshold\": 6.8 }\n// `acf` has the (n - lag)/n bias of the estimator undone, so it is comparable\n// against `acf_threshold`. The period is exact whether or not the series is a\n// whole number of cycles long.\n```\n\n`period` is `null` — explicitly, not an error — when no periodicity passes both\nstages (a constant, a pure trend, white noise). Only periods from 2 to `n/2`\nare admissible.\n\n#### `spectral_residual(data) -> SpectralResidualResult`\n\nScore every point for anomalies by spectral residual saliency (Ren et al.\n2019) — spikes, steps and dropouts, without a trained model and without\nassuming a period. At least 12 finite values; the options default to the\npaper's.\n\n**Input:**\n```json\n{ \"data\": [1, 1.1, 0.9, 1, 6, 1, 1.1, 0.9, 1, 1, 1.1, 0.9],\n  \"averaging_window\": 3, \"judgement_window\": 40, \"threshold\": 3.0,\n  \"min_zscore\": 1.5, \"sensitivity\": 70, \"batch_size\": null }\n```\n\n**Output:**\n```json\n{ \"points\": [{ \"index\": 4, \"value\": 6, \"saliency\": 2.1, \"score\": 5.3,\n               \"expected\": 1.0, \"lower\": 0.9, \"upper\": 1.1, \"is_anomaly\": true, \"near_edge\": false }],\n  \"anomalies\": [4] }\n```\n\n`expected` is the low-frequency reconstruction of the series with its anomalies\nreplaced by their neighbours and `lower`/`upper` the band of `sensitivity`\npercent coverage around it — chart information; the anomaly decision is the\n`score` against `threshold`, gated by `min_zscore` against the level of the\nwindow before the point.\n\n## npm (WebAssembly)\n\n```bash\nnpm install @iyulab/u-insight\n```\n\nThe package resolves per environment via a conditional `exports` map:\n\n| Environment | Entry |\n|---|---|\n| Bundlers (webpack, Vite, …) | ESM + WebAssembly ESM-integration (`default` condition) |\n| Node.js — `require()`, ESM `import`, CJS TS runners (`tsx`, `ts-node`) | CJS glue loading the wasm from the filesystem (`node` condition) — no loader hooks or flags |\n\nA browser **without** a bundler is not supported: the package loads its `.wasm`\nfile with an ES module import, which browsers refuse (`application/wasm` is not a\nmodule script type), so `<script type=\"module\">` from a CDN fails, and CDN\nre-bundling services fail on the same import. Use a bundler or Node.\n\n## Related\n\n- [u-analytics](https://github.com/iyulab/u-analytics) -- Statistical analytics\n- [u-numflow](https://github.com/iyulab/u-numflow) -- Mathematical primitives\n\n## License\n\nMIT License\n","readmeFilename":"README.md"}