[Gretl-users] removing nan and inf from a matrix

Artur T. artur.tarassow at googlemail.com
Wed Jul 31 06:56:08 EDT 2013


This is great! Actually, I was looking for something like this for a
while. Could anybody explain the single elements of this command,
please? It does not look very intuitive to me. Or is there reference in
the gretl guide on this?

M = isnan(M) ? 0 : M

Thank you.
Artur

Am 25.07.2013 11:28, schrieb Allin Cottrell:
> On Tue, 23 Jul 2013, Logan Kelly wrote:
> 
>> I need to take the log difference of a matrix, i.e. log(M[2 
>> rows(M):,]/M[1:rows(M)-1,]). Unfortunately, M has elements 
>> equal to zero. I need to replace the nan's and inf's with 
>> 0's. This almost works
>>
>> M = isnan(M) ? 0 : M
>>
>> but does not remove inf's. Any sugestions?
> 
> Is this calculation actually legit? Assuming it is, then
> 
> <hansl>
> matrix M = muniform(15,2)
> M[2,2] = 0
> M[3,2] = 0
> matrix ldM = log(M[2:rows(M),] - M[1:rows(M)-1,])
> ldM = isnan(0 * ldM) ? 0 : ldM
> print M ldM
> </hansl>
> 
> This relies on the IEEE 754 rules: both 0*inf and 0*(-inf) 
> return nan.
> 
> Allin Cottrell
> _______________________________________________
> Gretl-users mailing list
> Gretl-users at lists.wfu.edu
> http://lists.wfu.edu/mailman/listinfo/gretl-users
> 

-- 
Jabber account: t.artur at ubuntu-jabber.de
Join me on Diaspora: ArturT at kosmospora.net
(Invitation to Diaspora: kosmospora.net/i/94ce021fe957

You would like to send an encrypted PGP message?
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.12 (GNU/Linux)

mQENBFHqSQABCADvcNkANqF9klVT4o0XbTJUccyvci7DTtbW6W9DBCuqtLoCMaJl
/mSFcK3p5RkpSLjI1CoD0ocLizImUmuMRPneyi2/MEKyTelMR5VG2d6B0xS8gs+d
xbCLQ1kUDWYMmkrM2S2evH3/T5T+2ND5JzLILbbLix6Tos1N8FZyecI6WJUwN4t8
TIkn3Y9Pk/VKwBCLsMh7+i8zlhpO39MQLnFp40GZgnr/xiOhdmEFSzSM++SHwByg
4+vp5qRauZAI14yysMS2cjoiTqWbACf2tyJqiS5usCjO7GzVP7IkN8636mrIyovZ
JV0EjUUq5RXzRW1E9o0rxbkjq5LpMzkbawjjABEBAAG0HkFydHVyIFQuIDx0X2Fy
dHVyQGxhdmFiaXQuY29tPokBPgQTAQIAKAUCUepJAAIbIwUJCWYBgAYLCQgHAwIG
FQgCCQoLBBYCAwECHgECF4AACgkQ6Xw4V49pjGZhSwf+Pr9ml4pGm3S4hOGNeDQM
+LgDJ813WKuWk0+wAuFkBbPqVuTQRy56Xdbi5Zm0kAk9tE0smBlZyAGiBd1w+pcI
pyI80ZWUrFA1iZHQFdoKgGvTH62THW3XU4qLfW/kNrOmZLPoRYUCuAoovH9PVy8i
sda97qz78VPrKF4WcKmuoKnRkb74+zg46glMEwFlQXESh3GczmJ+xZxYYAAeMcYW
4AsQjFA3gfj4c0RYmoUjfaf1I0GQ67Hcvbf7r31Nhag8wRXl4xuNzgYaG9xyALkF
iMUubIcAZhxVZAQid7y/6il7CjqMudkY6bY4u5tAlnlLWGtetVg7i7MmJFcon1ui
ebkBDQRR6kkAAQgA/quczNzkw620xl0ky/E6FQdbMCxHTDQ3yiz3A9Nr8hYp37mb
Yx0g4DuZkbr1zLu42lU1nPtrN0iuojxhrtbadVLTAD+TY3f+wmqz8uh1RxsGO1xg
KTw+G25ToGMdLahwqZzQ3gVc5wFssav5i98NflUeZOfbhbXUoK3clA4rigaPAzIq
hHptbie3hE6PWPAa9pItJrpOa0z2C9Mfe5ayiwwGid79cV9TnSJzE4AZqHem3YHC
+3jnfdPiQ7mERFmZgxczXDo4pnM8t2vEu3siuq8Nx0dgL76Ow0uF1diEuqB83eGW
P3JGezxTci1kpEVpK2BXGk3AQgXL1pzy8iidvQARAQABiQElBBgBAgAPBQJR6kkA
AhsMBQkJZgGAAAoJEOl8OFePaYxmlN4H/RHiCJxgE4vgrMpRxj+hnBaGvOCO4yVX
iOTVF085y4HTCSMQqHufsGNAkFfCej+rydFT0ptpCj76SRgepGRZ4SFMwUOkee/T
q7SdPMF6vpPMEI94tS8cOit6WB55gHhYZbDKtjjVoWloRg3GgR9rSK78aq2udYG7
yRA3T3+NRK4XZIwAt2VqnKGAjiODUjnlSxkW4E46o93CgyX/oGOAFmyLdYnUQclT
hD/nGC0rudciqEr04m4fy2pPLpzYZPoPU6pD3UfTqt3ufN0sJqkexy41v4kgunyg
AnDETvXKKT3ipBDcqq/0t0VFjtTgqpK7F000AShZtU4vjczFFUy1Mw8=
=H2AF
-----END PGP PUBLIC KEY BLOCK-----


More information about the Gretl-users mailing list