- Subscribe to RSS Feed
- Mark Question as New
- Mark Question as Read
- Float this Question for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page
Using math function methods in NiFi
- Labels:
-
Apache NiFi
Created 04-17-2023 12:28 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello NiFi Community,
I want to convert decimal degree coordinates (e.g. -45.123658) to radians, and I want to use the built-in NiFi math function to do so. However, simply following the simple example in the Expression Language documentation for math, the example fails. I keep getting an "unexpected token" error whenever trying to use toDouble or the math function itself. Anyone have any success with using the math function and any of the methods associated with it, particularly if they take a double as an argument?
Since the function is subjectless, I'm :
${math("toRadians", ${latitude:toDouble()})}
But I've also tried variations of:
${latitude:toDouble():math("toRadians", ${latitude})}
${latitude:math("toRadians", ${latitude:toDouble()})}
I appreciate any insight.
Created 04-17-2023 01:18 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi ,
Did you try the following:
${latitude:toDecimal():math("toRadians")}
Or
${latitude:math("toRadians")}
Created 04-17-2023 02:29 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you @SAMSAL. I can always count on you to respond with good ideas. It didn't occur to me to include just a single parameter in the math function because the documentation shows using "scalb" and "pow" methods with the second parameter as the value to pass to the input method. But also, I was trying to use a Double because they documentation says "toRadians" only accepts a double, and the NiFi expression language docs shows using a "toDouble()", but "toDouble" doesn't seem to be supported. Seems to be an inconsistency in the docs.
Your suggestions were pretty close. Below is the final result which did the trick.
${latitude:toDecimal():math("toRadians")}
Thank you again!
Created 04-17-2023 01:18 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi ,
Did you try the following:
${latitude:toDecimal():math("toRadians")}
Or
${latitude:math("toRadians")}
Created 04-17-2023 02:29 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you @SAMSAL. I can always count on you to respond with good ideas. It didn't occur to me to include just a single parameter in the math function because the documentation shows using "scalb" and "pow" methods with the second parameter as the value to pass to the input method. But also, I was trying to use a Double because they documentation says "toRadians" only accepts a double, and the NiFi expression language docs shows using a "toDouble()", but "toDouble" doesn't seem to be supported. Seems to be an inconsistency in the docs.
Your suggestions were pretty close. Below is the final result which did the trick.
${latitude:toDecimal():math("toRadians")}
Thank you again!
