Questions on expression testing and manipulation through pattern matching and constructing efficient patterns.

learn more… | top users | synonyms (1)

3
votes
3answers
183 views

Change matrix elements at specific locations?

Let's say I have an array a={{1,2,3}, {4,5,6}, {7,8,9}} I want to have all elements along the diagonal multiplied by 2. ...
6
votes
6answers
522 views

Determine if all the zeros in a list occur at the end

I have a collection of (short) lists of nonnegative integers. For each, I would like a predicate that decides if all of the zeros in the list appear at the end. For example, ...
2
votes
2answers
161 views

Can a pattern examine all partitions of a sequence?

Say I have a list: {a, b, c, d}. I'd like to check that the list has some partition, say {{a, b, c}, {d}} such that all the elements of the partition satisfy a ...
0
votes
1answer
122 views

Replace elements that match pattern

I am using pattern matching to identify elements in a list to be replaced. How can I supply a list of patterns to match and replace all elements in the list that match the pattern? The problem I have ...
2
votes
1answer
100 views

Removing characters from non-strings

I have a large list of lists that contains mixed data, some real, some strings. The lists are of various lengths and depths. Some of the real data values have an asterisk appended to them, e.g.: ...
5
votes
1answer
112 views

Compare tree structures in mathematica

Since Mathematica expression is basically a tree structure, I would like to perform tree structure comparison with certain restrictions, for instance that the identity of nodes on the same level be ...
8
votes
3answers
302 views

Why these ways of defining a function with variable number of arguments fail?

First: I know about the correct way to define a function with variable number of arguments: Clear[f] f[s__] := Plus[s] f[1, 2, 3, 4] (* 10 *) BUT I ...
0
votes
3answers
77 views

How to create a general expression for an integer derivative?

I need MMa to return a general expression for the jth derivative wrt v of v^n. This didn't work: ...
0
votes
1answer
79 views

How to use pattern matching for integral identities?

I have an unknown pdf f[x], and I need to express integrals involving f[x] as expansions of the moments of f[x]. For example: ...
5
votes
5answers
177 views

Isolating cross terms

I have a set of expressions that contains terms like $\frac{1}{(x + a + b)(c+d)}$. I would like to simplify the denominator so that products of $a,b,c,d$ are dropped, but $x c$ and $x d$ are kept. ...
0
votes
2answers
69 views

FilterRules with pattern for name [duplicate]

I have a list of rules and I want to filter it using a pattern for the initial string representing the name of the rule. So that in the example below it filters linearBool even if it is called ...
2
votes
1answer
122 views

Odd behavior matching powers of pi

I have a long list of generated values from which I want to remove "weird" ones like Sin[Sin[1]] and Pi^2/4. However, trying to ...
4
votes
1answer
250 views

Pattern matching multiple symbols names and powers

Seemingly a relatively simple problem, I can't seem to find a solution... I want to build a pattern that will match any symbol whose name starts with V, and is elevated at any power. Something on the ...
18
votes
1answer
593 views

NotebookFind and String Pattern Expressions

Is there a way that NotebookFind can be used to match string pattern expressions rather than just strings? The documentation for ...
10
votes
5answers
666 views

Best way to modify values in a list of rules?

Recently I had to solve a problem similar to this: Let's say I have a list of list of rules ...
4
votes
3answers
197 views

How can I improve NumberString?

I would like to test strings to see if they represent numbers. This should include number representations with precision marks and scientific notation. NumberString ...
1
vote
1answer
61 views

How to modify the output result of an evaluation

For ease of notation, I have defined a function, $f$, that defines the permutation of Bosonic particles such that it has the following properties (the form of $f$ is irrelavent for this question): ...
4
votes
3answers
139 views

Extracting subscripts and superscripts

Suppose I have several types of expressions (in some random order) of the form Power[Subscript[g, a], μ] which is $g_a{}^\mu$ ...
0
votes
2answers
82 views

Keep exponents separately

I have the following expressions $g^{ab+cd+...}$ or in the full form Power[g,Plus[Times[a,b],Times[c,d],...]] How to convert this expression into ...
10
votes
1answer
404 views

How to visualize pattern matching process?

I want a function that does the same job like ReplaceRepeated, and can make the matching process visible. I searched the Internet but didn't find any existing code ...
23
votes
5answers
713 views

How can a big table be treated as a database?

I often work with big tables that I want to treat kind of like a database. Here's an example table. ...
10
votes
2answers
526 views

Is there a way to identify a symbolic fraction?

Is there a way to use Head to detect a symbolic fraction? In particular I find, Head[a/b] Head[1/5] Times Rational ...
4
votes
7answers
519 views

Given a symbolic expression how to find if starts with a minus or not?

I am using a Mathematica function which returns some error term in symbolic form. I needed a way to determine if this term starts with a minus sign or not. There will be only one term. This is to ...
4
votes
4answers
187 views

Cases with Alternatives failed

Consider this list of rules rules = {a -> 1, b -> 2, c -> 3} I'd like to fish some of the rules out of such a list using ...
15
votes
2answers
2k views

Determine whether some expression contains a given symbol

Given a symbol t and an expression expr, how can I determine whether or not the symbol t ...
2
votes
3answers
105 views

Testing for a vector of reals [closed]

Suppose I define: RealVector[expr_]:=VectorQ[expr,NumberQ[#]&&Head[#]===Real)]; Then: ...
1
vote
1answer
71 views

How to use a list of rules as a data set

I have a file of models that I have saved that I want to be able to call in another program to be solved with NDSolve. Can I use ...
0
votes
0answers
50 views

“Meta-matching” patterns [duplicate]

The title refers to the general problem of writing patterns to match pattern-containing expressions (hence "meta-match"). Here's an example. In the following rules ...
2
votes
1answer
65 views

What's the pattern that will match a head anywhere in an expression

I'm looking for the pattern patt[head] that will match any expression expr in which head occurs as a head anywhere within expr. ...
3
votes
2answers
172 views

Replace expression, but only “outside” of a function [duplicate]

I have a horrid expression, which is basically a sum of exponents with coefficients. Here's a taste: What I want to do is to replace ks with another expression, ...
2
votes
2answers
155 views
0
votes
2answers
54 views

Matching exponents using Cases[]

I have a question regarding pattern matching. Can anyone explain the results i get ? Cases[Table[x^n, {n, 1, 10}], a_^1] Which gives the following result. {x, ...
1
vote
2answers
188 views

Pattern Matching in Lists

I have a UN voting dataset – taken from a CSV file – where each row is in following format: ...
3
votes
1answer
204 views

Making a list of rules from the list of elements

Starting from the list: {f[q1, q2], f[q3, q4], g[q1], g[q2, q3, q4], d[k1 - q1], d[k2 - q2 - q3 -q4]} I would like to get the result: ...
1
vote
2answers
153 views

Pattern Match and Replace Expression involving Pure Function

Let's say I have an expression that in held form contains a pointer to a function. expr = Hold[2*{"FUNCTION1"} + 5]; ...
2
votes
1answer
43 views

Default value behaves differently when used in Function and when used with Cases

Consider this example: Cases[{4, x, 5 a , 6 x}, x_.*a_ :> x] (*{1, 1, 5, 6}*) It is clear that the _. took 1 as a ...
7
votes
1answer
167 views

LetterCharacter for Cyrillic symbols

Why does the code StringMatchQ["ы", LetterCharacter] return False? Probably because: ...
10
votes
2answers
211 views

Unexpected result from StringReplace

The following works as expected. StringReplace["xxxyxz", "x" ~~ _ -> "ww"] "wwwwww" And so does this. ...
3
votes
2answers
100 views
2
votes
0answers
58 views

pattern matching and applying a function, not working as expected [duplicate]

Consider the following code G[x, y] /. a_[b__] -> Total[a @@@ Permutations[List[b]]] I expect it to give G[x, y]+G[y,x] ...
0
votes
1answer
84 views
2
votes
1answer
133 views

How to use slots and patterns to reduce repetitive calculation?

This is kind of complicated... How can we make MMa calculate values of a function before doing multiple pattern or slot substitutions? Answers to similar questions didn't cover the case where the ...
2
votes
0answers
133 views

Is this a bug in NCAlgebra library?

In course of my work with NCAlgebra package for Mathematica, http://math.ucsd.edu/~ncalg/ , I encountered unexpected behavior of replacements. I am using ...
2
votes
3answers
360 views

Mathematica won't plot the a function that is solved from NDSolve

I have used NDSolve to solve for a function (an angle of a triple pendulum), and now I wish to plot the derivative of that function (the angular velocity). ...
1
vote
1answer
61 views

Pattern matching functions of variables

I am trying work with a general operator z[] and later plug in candidate forms for z[]. But pattern matching turns the inside z[] into a constant and can no longer perform operations on it: ...
32
votes
1answer
688 views

Why is StringExpression faster than RegularExpression?

Edit: as noted by Albert Retey the performance difference is only seen when sub expression extraction is performed. If this test is used below the timings are similar: ...
1
vote
1answer
180 views

Finding the index of (x,y) pairs in a list

I have a large list of $(x,y)$ pairs, and I want to find the index of a particular pair in order to extract some data from another array. By way of an example, ...