In [1]:
dv = @data(["group A", "group B", "group C"])
dv


LoadError: UndefVarError: @data not defined
while loading In[1], in expression starting on line 2

In [2]:
readdir()


Out[2]:
15-element Array{ByteString,1}:
 ".ipynb_checkpoints"            
 "GTD-Export.csv"                
 "Tutorial.jl"                   
 "Untitled.ipynb"                
 "cofreewy.txt"                  
 "health.csv"                    
 "juliamaterials.ipynb"          
 "learnJlsanders.ipynb"          
 "learning.jl"                   
 "learningJulia.ipynb"           
 "mydata2.csv"                   
 "myplot.png"                    
 "terrorism-analysis-julia.ipynb"
 "testing.jl"                    
 "tryingjulia.ipynb"             

In [3]:
mydata = readdlm("cofreewy.txt")


Out[3]:
25x4 Array{Any,2}:
   "Hour"   "CO"     "Traffic"    "Wind"
  1        2.4     50           -0.2    
  2        1.7     26            0.0    
  3        1.4     16            0.0    
  4        1.2     10            0.0    
  5        1.2     12            0.1    
  6        2.0     41           -0.1    
  7        3.4    157           -0.1    
  8        5.8    276           -0.2    
  9        6.8    282            0.2    
 10        6.6    242            1.0    
 11        6.6    200            2.3    
 12        6.3    186            3.8    
 13        5.8    179            4.6    
 14        5.5    178            5.4    
 15        5.9    203            5.9    
 16        6.8    264            5.9    
 17        7.0    289            5.6    
 18        7.4    308            4.9    
 19        6.4    267            3.8    
 20        5.0    190            2.5    
 21        3.8    125            1.4    
 22        3.5    120            0.6    
 23        3.3    116            0.4    
 24        3.1     87            0.1    

In [14]:
using DataFrames, DataArrays, #PooledDataArrays

mydata1 = DataFrame(readcsv("GTD-Export.csv"))


LoadError: syntax: invalid assignment location
while loading In[14], in expression starting on line 3

In [12]:
readdir()


Out[12]:
15-element Array{ByteString,1}:
 ".ipynb_checkpoints"            
 "GTD-Export.csv"                
 "Tutorial.jl"                   
 "Untitled.ipynb"                
 "cofreewy.txt"                  
 "health.csv"                    
 "juliamaterials.ipynb"          
 "learnJlsanders.ipynb"          
 "learning.jl"                   
 "learningJulia.ipynb"           
 "mydata2.csv"                   
 "myplot.png"                    
 "terrorism-analysis-julia.ipynb"
 "testing.jl"                    
 "tryingjulia.ipynb"             

In [15]:
?DataFrame


search: 
Out[15]:

An AbstractDataFrame that stores a set of named columns

The columns are normally AbstractVectors stored in memory, particularly a Vector, DataVector, or PooledDataVector.

Constructors

DataFrame(columns::Vector{Any}, names::Vector{Symbol})
DataFrame(kwargs...)
DataFrame() # an empty DataFrame
DataFrame(t::Type, nrows::Integer, ncols::Integer) # an empty DataFrame of arbitrary size
DataFrame(column_eltypes::Vector, names::Vector, nrows::Integer)
DataFrame(ds::Vector{Associative})

Arguments

  • columns : a Vector{Any} with each column as contents
  • names : the column names
  • kwargs : the key gives the column names, and the value is the column contents
  • t : elemental type of all columns
  • nrows, ncols : number of rows and columns
  • column_eltypes : elemental type of each column
  • ds : a vector of Associatives

Each column in columns should be the same length.

Notes

Most of the default constructors convert columns to DataArrays. The base constructor, DataFrame(columns::Vector{Any}, names::Vector{Symbol}) does not convert to DataArrays.

A DataFrame is a lightweight object. As long as columns are not manipulated, creation of a DataFrame from existing AbstractVectors is inexpensive. For example, indexing on columns is inexpensive, but indexing by rows is expensive because copies are made of each column.

Because column types can vary, a DataFrame is not type stable. For performance-critical code, do not index into a DataFrame inside of loops.

Examples

df = DataFrame()
v = ["x","y","z"][rand(1:3, 10)]
df1 = DataFrame(Any[[1:10], v, rand(10)], [:A, :B, :C])  # columns are Arrays
df2 = DataFrame(A = 1:10, B = v, C = rand(10))           # columns are DataArrays
dump(df1)
dump(df2)
describe(df2)
head(df1)
df1[:A] + df2[:C]
df1[1:4, 1:2]
df1[[:A,:C]]
df1[1:2, [:A,:C]]
df1[:, [:A,:C]]
df1[:, [1,3]]
df1[1:4, :]
df1[1:4, :C]
df1[1:4, :C] = 40. * df1[1:4, :C]
[df1; df2]  # vcat
[df1  df2]  # hcat
size(df1)
DataFrame DataFrames DataFrameRow SubDataFrame GroupedDataFrame


In [20]:
mydat = DataFrame(readcsv("GTD-Export.csv"))
# delete the first row
mydat = deleterows!(mydat, 1)
# make x3 and factor variable

mydat2 = pool!(mydat, [:x3, :x4] )

In [21]:
summary(mydat2[:x3])


LoadError: MethodError: `getindex` has no method matching getindex(::Void, ::Symbol)
while loading In[21], in expression starting on line 1

In [22]:
describe(mydat2[:x3])


LoadError: MethodError: `getindex` has no method matching getindex(::Void, ::Symbol)
while loading In[22], in expression starting on line 1

In [23]:
levels(mydat2[:x3])


LoadError: MethodError: `getindex` has no method matching getindex(::Void, ::Symbol)
while loading In[23], in expression starting on line 1

In [24]:
levels(mydat2)


LoadError: MethodError: `levels` has no method matching levels(::Void)
while loading In[24], in expression starting on line 1

In [25]:
methods(levels)


Out[25]:
3 methods for generic function levels:

In [26]:
describe(mydat)


x1
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  75

x2
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  70

x3
Length  75
Type    Pooled Any
NAs     0
NA%     0.0%
Unique  4

x4
Length  75
Type    Pooled Any
NAs     0
NA%     0.0%
Unique  42

x5
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  12

x6
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  3

x7
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  7

x8
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  4

x9
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  5

x10
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  5

x11
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  33

x12
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  27

x13
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  9

x14
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  7

x15
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  5

x16
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  2

x17
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  7

x18
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  3

x19
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  2

x20
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  4

x21
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  4

x22
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  3

x23
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  3

x24
Length  75
Type    Any
NAs     0
NA%     0.0%
Unique  2


In [27]:
Pkg.clone("git://github.com/nalimilan/FreqTables.jl.git")


INFO: Cloning FreqTables from git://github.com/nalimilan/FreqTables.jl.git
INFO: Computing changes...
INFO: No packages to install, update or remove

In [28]:
using FreqTables


INFO: Precompiling module NamedArrays...
WARNING: New definition 
    broadcast(Function, NamedArrays.NamedArray...) at /Users/arindambose/.julia/v0.4/NamedArrays/src/keepnames.jl:47
is ambiguous with: 
    broadcast(Function, DataArrays.PooledDataArray...) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:309.
To fix, define 
    broadcast(Function)
before the new definition.
WARNING: New definition 
    +(AbstractArray{#T1<:Number, #N<:Any}, NamedArrays.NamedArray{#T2<:Number, #N<:Any, AT<:Any, DT<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:34
is ambiguous with: 
    +(DataArrays.DataArray, AbstractArray) at /Users/arindambose/.julia/v0.4/DataArrays/src/operators.jl:326.
To fix, define 
    +(DataArrays.DataArray{#T1<:Number, N<:Any}, NamedArrays.NamedArray{#T2<:Number, N<:Any, AT<:Any, DT<:Any})
before the new definition.
WARNING: New definition 
    +(AbstractArray{#T1<:Number, #N<:Any}, NamedArrays.NamedArray{#T2<:Number, #N<:Any, AT<:Any, DT<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:34
is ambiguous with: 
    +(DataArrays.AbstractDataArray, AbstractArray) at /Users/arindambose/.julia/v0.4/DataArrays/src/operators.jl:349.
To fix, define 
    +(DataArrays.AbstractDataArray{#T1<:Number, N<:Any}, NamedArrays.NamedArray{#T2<:Number, N<:Any, AT<:Any, DT<:Any})
before the new definition.
WARNING: New definition 
    ./(NamedArrays.NamedArray{#T1<:Number, #N<:Any, AT<:Any, DT<:Any}, AbstractArray{#T2<:Number, #N<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:33
is ambiguous with: 
    ./(AbstractArray, Union{DataArrays.DataArray, DataArrays.PooledDataArray}) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:285.
To fix, define 
    ./(NamedArrays.NamedArray{#T1<:Number, N<:Any, AT<:Any, DT<:Any}, Union{DataArrays.PooledDataArray{#T2<:Number, R<:Integer, N<:Any}, DataArrays.DataArray{#T2<:Number, N<:Any}})
before the new definition.
WARNING: New definition 
    ./(AbstractArray{#T1<:Number, #N<:Any}, NamedArrays.NamedArray{#T2<:Number, #N<:Any, AT<:Any, DT<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:34
is ambiguous with: 
    ./(Union{DataArrays.DataArray, DataArrays.PooledDataArray}, AbstractArray) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:284.
To fix, define 
    ./(Union{DataArrays.PooledDataArray{#T1<:Number, R<:Integer, N<:Any}, DataArrays.DataArray{#T1<:Number, N<:Any}}, NamedArrays.NamedArray{#T2<:Number, N<:Any, AT<:Any, DT<:Any})
before the new definition.
WARNING: New definition 
    ./(NamedArrays.NamedArray, AbstractArray) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:62
is ambiguous with: 
    ./(AbstractArray, Union{DataArrays.DataArray, DataArrays.PooledDataArray}) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:285.
To fix, define 
    ./(NamedArrays.NamedArray, Union{DataArrays.DataArray, DataArrays.PooledDataArray})
before the new definition.
WARNING: New definition 
    .+(NamedArrays.NamedArray{#T1<:Number, #N<:Any, AT<:Any, DT<:Any}, AbstractArray{#T2<:Number, #N<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:33
is ambiguous with: 
    .+(AbstractArray, Union{DataArrays.DataArray, DataArrays.PooledDataArray}, AbstractArray...) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:297.
To fix, define 
    .+(NamedArrays.NamedArray{#T1<:Number, N<:Any, AT<:Any, DT<:Any}, Union{DataArrays.PooledDataArray{#T2<:Number, R<:Integer, N<:Any}, DataArrays.DataArray{#T2<:Number, N<:Any}})
before the new definition.
WARNING: New definition 
    .+(AbstractArray{#T1<:Number, #N<:Any}, NamedArrays.NamedArray{#T2<:Number, #N<:Any, AT<:Any, DT<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:34
is ambiguous with: 
    .+(Union{DataArrays.DataArray, DataArrays.PooledDataArray}, AbstractArray...) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:297.
To fix, define 
    .+(Union{DataArrays.PooledDataArray{#T1<:Number, R<:Integer, N<:Any}, DataArrays.DataArray{#T1<:Number, N<:Any}}, NamedArrays.NamedArray{#T2<:Number, N<:Any, AT<:Any, DT<:Any})
before the new definition.
WARNING: New definition 
    .+(NamedArrays.NamedArray, AbstractArray) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:62
is ambiguous with: 
    .+(AbstractArray, Union{DataArrays.DataArray, DataArrays.PooledDataArray}, AbstractArray...) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:297.
To fix, define 
    .+(NamedArrays.NamedArray, Union{DataArrays.DataArray, DataArrays.PooledDataArray})
before the new definition.
WARNING: New definition 
    .*(NamedArrays.NamedArray{#T1<:Number, #N<:Any, AT<:Any, DT<:Any}, AbstractArray{#T2<:Number, #N<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:33
is ambiguous with: 
    .*(AbstractArray, Union{DataArrays.DataArray, DataArrays.PooledDataArray}, AbstractArray...) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:295.
To fix, define 
    .*(NamedArrays.NamedArray{#T1<:Number, N<:Any, AT<:Any, DT<:Any}, Union{DataArrays.PooledDataArray{#T2<:Number, R<:Integer, N<:Any}, DataArrays.DataArray{#T2<:Number, N<:Any}})
before the new definition.
WARNING: New definition 
    .*(AbstractArray{#T1<:Number, #N<:Any}, NamedArrays.NamedArray{#T2<:Number, #N<:Any, AT<:Any, DT<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:34
is ambiguous with: 
    .*(Union{DataArrays.DataArray, DataArrays.PooledDataArray}, AbstractArray...) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:295.
To fix, define 
    .*(Union{DataArrays.PooledDataArray{#T1<:Number, R<:Integer, N<:Any}, DataArrays.DataArray{#T1<:Number, N<:Any}}, NamedArrays.NamedArray{#T2<:Number, N<:Any, AT<:Any, DT<:Any})
before the new definition.
WARNING: New definition 
    .*(NamedArrays.NamedArray, AbstractArray) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:62
is ambiguous with: 
    .*(AbstractArray, Union{DataArrays.DataArray, DataArrays.PooledDataArray}, AbstractArray...) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:295.
To fix, define 
    .*(NamedArrays.NamedArray, Union{DataArrays.DataArray, DataArrays.PooledDataArray})
before the new definition.
WARNING: New definition 
    -(NamedArrays.NamedArray{#T1<:Number, #N<:Any, AT<:Any, DT<:Any}, AbstractArray{#T2<:Number, #N<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:33
is ambiguous with: 
    -(AbstractArray, DataArrays.DataArray) at /Users/arindambose/.julia/v0.4/DataArrays/src/operators.jl:326.
To fix, define 
    -(NamedArrays.NamedArray{#T1<:Number, N<:Any, AT<:Any, DT<:Any}, DataArrays.DataArray{#T2<:Number, N<:Any})
before the new definition.
WARNING: New definition 
    -(NamedArrays.NamedArray{#T1<:Number, #N<:Any, AT<:Any, DT<:Any}, AbstractArray{#T2<:Number, #N<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:33
is ambiguous with: 
    -(AbstractArray, DataArrays.AbstractDataArray) at /Users/arindambose/.julia/v0.4/DataArrays/src/operators.jl:349.
To fix, define 
    -(NamedArrays.NamedArray{#T1<:Number, N<:Any, AT<:Any, DT<:Any}, DataArrays.AbstractDataArray{#T2<:Number, N<:Any})
before the new definition.
WARNING: New definition 
    -(AbstractArray{#T1<:Number, #N<:Any}, NamedArrays.NamedArray{#T2<:Number, #N<:Any, AT<:Any, DT<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:34
is ambiguous with: 
    -(DataArrays.DataArray, AbstractArray) at /Users/arindambose/.julia/v0.4/DataArrays/src/operators.jl:326.
To fix, define 
    -(DataArrays.DataArray{#T1<:Number, N<:Any}, NamedArrays.NamedArray{#T2<:Number, N<:Any, AT<:Any, DT<:Any})
before the new definition.
WARNING: New definition 
    -(AbstractArray{#T1<:Number, #N<:Any}, NamedArrays.NamedArray{#T2<:Number, #N<:Any, AT<:Any, DT<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:34
is ambiguous with: 
    -(DataArrays.AbstractDataArray, AbstractArray) at /Users/arindambose/.julia/v0.4/DataArrays/src/operators.jl:349.
To fix, define 
    -(DataArrays.AbstractDataArray{#T1<:Number, N<:Any}, NamedArrays.NamedArray{#T2<:Number, N<:Any, AT<:Any, DT<:Any})
before the new definition.
WARNING: New definition 
    -(NamedArrays.NamedArray, AbstractArray) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:62
is ambiguous with: 
    -(AbstractArray, DataArrays.DataArray) at /Users/arindambose/.julia/v0.4/DataArrays/src/operators.jl:326.
To fix, define 
    -(NamedArrays.NamedArray, DataArrays.DataArray)
before the new definition.
WARNING: New definition 
    -(NamedArrays.NamedArray, AbstractArray) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:62
is ambiguous with: 
    -(AbstractArray, DataArrays.AbstractDataArray) at /Users/arindambose/.julia/v0.4/DataArrays/src/operators.jl:349.
To fix, define 
    -(NamedArrays.NamedArray, DataArrays.AbstractDataArray)
before the new definition.
WARNING: New definition 
    .-(NamedArrays.NamedArray{#T1<:Number, #N<:Any, AT<:Any, DT<:Any}, AbstractArray{#T2<:Number, #N<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:33
is ambiguous with: 
    .-(AbstractArray, Union{DataArrays.DataArray, DataArrays.PooledDataArray}) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:285.
To fix, define 
    .-(NamedArrays.NamedArray{#T1<:Number, N<:Any, AT<:Any, DT<:Any}, Union{DataArrays.PooledDataArray{#T2<:Number, R<:Integer, N<:Any}, DataArrays.DataArray{#T2<:Number, N<:Any}})
before the new definition.
WARNING: New definition 
    .-(AbstractArray{#T1<:Number, #N<:Any}, NamedArrays.NamedArray{#T2<:Number, #N<:Any, AT<:Any, DT<:Any}) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:34
is ambiguous with: 
    .-(Union{DataArrays.DataArray, DataArrays.PooledDataArray}, AbstractArray) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:284.
To fix, define 
    .-(Union{DataArrays.PooledDataArray{#T1<:Number, R<:Integer, N<:Any}, DataArrays.DataArray{#T1<:Number, N<:Any}}, NamedArrays.NamedArray{#T2<:Number, N<:Any, AT<:Any, DT<:Any})
before the new definition.
WARNING: New definition 
    .-(NamedArrays.NamedArray, AbstractArray) at /Users/arindambose/.julia/v0.4/NamedArrays/src/arithmetic.jl:62
is ambiguous with: 
    .-(AbstractArray, Union{DataArrays.DataArray, DataArrays.PooledDataArray}) at /Users/arindambose/.julia/v0.4/DataArrays/src/broadcast.jl:285.
To fix, define 
    .-(NamedArrays.NamedArray, Union{DataArrays.DataArray, DataArrays.PooledDataArray})
before the new definition.

In [29]:
x = repeat(["a", "b", "c"], outer = [100]);

In [30]:
x


Out[30]:
300-element Array{ASCIIString,1}:
 "a"
 "b"
 "c"
 "a"
 "b"
 "c"
 "a"
 "b"
 "c"
 "a"
 "b"
 "c"
 "a"
 ⋮  
 "a"
 "b"
 "c"
 "a"
 "b"
 "c"
 "a"
 "b"
 "c"
 "a"
 "b"
 "c"

In [31]:
freqtable(x)


Out[31]:
3-element NamedArrays.NamedArray{Int64,1,Array{Int64,1},Tuple{Dict{ASCIIString,Int64}}}
a 100
b 100
c 100

In [32]:
y = repeat(["x", "y", "z"], outer = [100]);

In [33]:
freqtable(x,y)


Out[33]:
3x3 NamedArrays.NamedArray{Int64,2,Array{Int64,2},Tuple{Dict{ASCIIString,Int64},Dict{ASCIIString,Int64}}}
Dim1 \ Dim2 x   y   z  
a           100 0   0  
b           0   100 0  
c           0   0   100

In [34]:
mydata


Out[34]:
76x24 Array{Any,2}:
             "GTD ID"  …  ""                                                                                                            
 201404090005             ""                                                                                                            
 201403140027             ""                                                                                                            
 201401210002             ""                                                                                                            
 201308080011             ""                                                                                                            
 201306300001          …  ""                                                                                                            
 201306180001             ""                                                                                                            
 201305120011             ""                                                                                                            
 201305070004             ""                                                                                                            
 201304290001             ""                                                                                                            
 201304260001          …  ""                                                                                                            
 201304160003             ""                                                                                                            
 201302210003             ""                                                                                                            
            ⋮          ⋱                                                                                                                
 200707160003             ""                                                                                                            
 200707150002          …  ""                                                                                                            
 200704280002             ""                                                                                                            
 200704060009             ""                                                                                                            
 200703150001             ""                                                                                                            
 200701050004             ""                                                                                                            
 200611050001          …  ""                                                                                                            
 200602280005             ""                                                                                                            
 200602090002             ""                                                                                                            
 200512080003             ""                                                                                                            
 200511290001             ""                                                                                                            
 200511150002          …  " please try again or contact the GTD administrator. (Results: Input string was not in a correct format.)</p>"

In [35]:
mydat


Out[35]:
x1x2x3x4x5x6x7x8x9x10x11x12x13x14x15x16x17x18x19x20x21x22x23x24
12014040900052014-04-09PakistanIslamabadUnited Baloch Army (UBA)-92146Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
22014031400272014-03-14PakistanSarabandTehrik-i-Taliban Pakistan (TTP)-91350PolicePrivate Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
32014012100022014-01-21PakistanMastung districtLashkar-e-Jhangvi-9Tehrik-i-Taliban Pakistan (TTP)03031Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
42013080800112013-08-08PakistanQuettaTehrik-i-Taliban Pakistan (TTP)-93950PolicePrivate Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
52013063000012013-06-30PakistanBadaberTehrik-i-Taliban Pakistan (TTP)-92050MilitaryPrivate Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
62013061800012013-06-18PakistanMardanUnknown-93543Government (General)Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
72013051200112013-05-12PakistanQuettaLashkar-e-Jhangvi-9Islamic Movement of Uzbekistan (IMU)0Tehrik-i-Taliban Pakistan (TTP)11176PoliceSouth AsiaAssassinationExplosives/Bombs/Dynamite
82013050700042013-05-06PakistanParachinarTehrik-i-Taliban Pakistan (TTP)-92370Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
92013042900012013-04-29PakistanPeshawarUnknown-9943PoliceGovernment (Diplomatic)Government (General)South AsiaBombing/ExplosionExplosives/Bombs/Dynamite
102013042600012013-04-26PakistanKarachiTehrik-i-Taliban Pakistan (TTP)-91140Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
112013041600032013-04-16PakistanPeshawarTehrik-i-Taliban Pakistan (TTP)-91860Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
122013022100032013-02-21IndiaHyderabadLashkar-e-Taiba (LeT)-9Indian Mujahideen1858Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
132013022100022013-02-21IndiaHyderabadLashkar-e-Taiba (LeT)-9Indian Mujahideen1858Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
142013011000032013-01-10PakistanQuettaUnited Baloch Army (UBA)-91250MilitaryPrivate Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
152012121500012012-12-15PakistanPeshawarTehrik-i-Taliban Pakistan (TTP)-91440MilitaryPrivate Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/DynamiteExplosives/Bombs/DynamiteFirearms
162012112500012012-11-25PakistanDera Ismail KhanTehrik-i-Taliban Pakistan (TTP)-9583Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
172012112200012012-11-21PakistanRawalpindiTehrik-i-Taliban Pakistan (TTP)-92562Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
182012091000022012-09-10PakistanParachinarTehrik-i-Taliban Pakistan (TTP)-91470PoliceBusinessPrivate Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
192012061600022012-06-16PakistanLandi KotalUnknown-92550Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
202012051400022012-05-14PakistanQuettaBaloch Republican Army (BRA)-9658MilitaryPrivate Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
212012050400012012-05-04PakistanKharTehrik-i-Taliban Pakistan (TTP)-92140PoliceSouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
222012031100072012-03-11PakistanBadaberTehrik-i-Taliban Pakistan (TTP)-91835Government (General)Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
232012011000022012-01-10PakistanJamrudTehrik-i-Taliban Pakistan (TTP)-93560Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
242011092000022011-09-20PakistanQuettaLashkar-e-Jhangvi02630TransportationPrivate Citizens & PropertySouth AsiaArmed AssaultFirearms
252011082000022011-08-20PakistanKarachiUnknown0850PoliceSouth AsiaArmed AssaultFirearms
262011071300092011-07-13IndiaMumbaiIndian Mujahideen1744Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
272011061100062011-06-11PakistanPeshawarTehrik-i-Taliban Pakistan (TTP)01840PolicePrivate Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
282011061100052011-06-11PakistanPeshawarTehrik-i-Taliban Pakistan (TTP)01840BusinessPrivate Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
292011050300192011-05-03IndiaLohardagaCommunist Party of India - Maoist (CPI-Maoist)11140PolicePolicePoliceSouth AsiaBombing/ExplosionArmed AssaultExplosives/Bombs/DynamiteFirearms
302011030900202011-03-09PakistanPeshawarTehrik-i-Taliban Pakistan (TTP)02650Private Citizens & PropertySouth AsiaBombing/ExplosionExplosives/Bombs/Dynamite
&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip&vellip

In [39]:
countrycity = freqtable(mydat[:x5], mydat[:x7])


LoadError: MethodError: `isless` has no method matching isless(::Int64, ::SubString{ASCIIString})
Closest candidates are:
  isless(::Real, !Matched::AbstractFloat)
  isless(::Real, !Matched::Real)
  isless(::Integer, !Matched::Char)
  ...
while loading In[39], in expression starting on line 1

 in sort! at /Applications/Julia-0.4.1.app/Contents/Resources/julia/lib/julia/sys.dylib (repeats 4 times)
 in freqtable at /Users/arindambose/.julia/v0.4/FreqTables/src/freqtable.jl:63

In [40]:
ccity = freqtable(mydat, :x5, :x7)


LoadError: MethodError: `isless` has no method matching isless(::Int64, ::SubString{ASCIIString})
Closest candidates are:
  isless(::Real, !Matched::AbstractFloat)
  isless(::Real, !Matched::Real)
  isless(::Integer, !Matched::Char)
  ...
while loading In[40], in expression starting on line 1

 in sort! at /Applications/Julia-0.4.1.app/Contents/Resources/julia/lib/julia/sys.dylib (repeats 4 times)
 in freqtable at /Users/arindambose/.julia/v0.4/FreqTables/src/freqtable.jl:63
 in freqtable at /Users/arindambose/.julia/v0.4/FreqTables/src/freqtable.jl:268

In [41]:
using RDatasets


WARNING: Base.String is deprecated, use AbstractString instead.
  likely near /Users/arindambose/.julia/v0.4/RDatasets/src/dataset.jl:1
WARNING: Base.String is deprecated, use AbstractString instead.
  likely near /Users/arindambose/.julia/v0.4/RDatasets/src/dataset.jl:1
WARNING: Base.String is deprecated, use AbstractString instead.
  likely near /Users/arindambose/.julia/v0.4/RDatasets/src/datasets.jl:1

In [44]:
iris = dataset("datasets", "iris")
iris[:LongSepal] = iris[:SepalLength] .> 5.0
freqtable(iris, :Species, :LongSepal)


Out[44]:
3x2 NamedArrays.NamedArray{Int64,2,Array{Int64,2},Tuple{Dict{ASCIIString,Int64},Dict{Bool,Int64}}}
Species \ LongSepal false true 
setosa              28    22   
versicolor          3     47   
virginica           1     49   

In [45]:
typeof(iris[:LongSepal])


Out[45]:
DataArrays.DataArray{Bool,1}

In [49]:
typeof(mydat[:x7])


Out[49]:
Array{Any,1}

In [47]:
names(mydat)


Out[47]:
24-element Array{Symbol,1}:
 :x1 
 :x2 
 :x3 
 :x4 
 :x5 
 :x6 
 :x7 
 :x8 
 :x9 
 :x10
 :x11
 :x12
 :x13
 :x14
 :x15
 :x16
 :x17
 :x18
 :x19
 :x20
 :x21
 :x22
 :x23
 :x24

In [50]:
freqtable(mydat, :x7, :x8)


LoadError: MethodError: `isless` has no method matching isless(::Int64, ::SubString{ASCIIString})
Closest candidates are:
  isless(::Real, !Matched::AbstractFloat)
  isless(::Real, !Matched::Real)
  isless(::Integer, !Matched::Char)
  ...
while loading In[50], in expression starting on line 1

 in sort! at /Applications/Julia-0.4.1.app/Contents/Resources/julia/lib/julia/sys.dylib (repeats 4 times)
 in freqtable at /Users/arindambose/.julia/v0.4/FreqTables/src/freqtable.jl:63
 in freqtable at /Users/arindambose/.julia/v0.4/FreqTables/src/freqtable.jl:268

In [51]:
zeros(Int, 2,2)


Out[51]:
2x2 Array{Int64,2}:
 0  0
 0  0

In [52]:
?NamedArray


search: 
LoadError: "NamedArray" is not defined in module Main
while loading In[52], in expression starting on line 119

 in error at /Applications/Julia-0.4.1.app/Contents/Resources/julia/lib/julia/sys.dylib
 in which_module at /Applications/Julia-0.4.1.app/Contents/Resources/julia/lib/julia/sys.dylib
 in call at /Applications/Julia-0.4.1.app/Contents/Resources/julia/lib/julia/sys.dylib
NamedArrays

Couldn't find NamedArray
Perhaps you meant NamedArrays, SharedArray or DataArray

In [53]:
using NamedArrays

In [54]:
?NamedArray


search: 
Out[54]:

NamedArray(T::Type, dims::Int...) creates an uninitialized array with default names for the dimensions (:A, :B, ...) and indices ("1", "2", ...).

NamedArray NamedArrays NamedMatrix


In [55]:
nres= NamedArray(zeros(Int,2,2),Any[[false,true],[false,true]],["cond1","cond2"])


Out[55]:
2x2 NamedArrays.NamedArray{Int64,2,Array{Int64,2},Tuple{Dict{Bool,Int64},Dict{Bool,Int64}}}
cond1 \ cond2 false true 
false         0     0    
true          0     0    

In [56]:
?isa


search: 
Out[56]:
isa(x, type) -> Bool

Determine whether x is of the given type.

isa isascii isalpha isalnum isapprox isabspath isassigned disable_sigint


In [57]:
?@assert


Out[57]:
@assert cond [text]

Throw an AssertionError if cond is false. Preferred syntax for writing assertions. Message text is optionally displayed upon assertion failure.


In [58]:
method(@assert)


LoadError: too few arguments
while loading In[58], in expression starting on line 1

In [59]:
method()


LoadError: UndefVarError: method not defined
while loading In[59], in expression starting on line 1

In [60]:
method("@assert")


LoadError: UndefVarError: method not defined
while loading In[60], in expression starting on line 1

In [62]:
@assert isa(mydat[:x3], Any)

In [63]:
typeof(mydat[:x3])


Out[63]:
DataArrays.PooledDataArray{Any,UInt8,1}

In [64]:
describe(mydat[:x3])


Length  75
Type    Pooled Any
NAs     0
NA%     0.0%
Unique  4

In [65]:
?summary


search: 
Out[65]:
summary(x)

Return a string giving a brief description of a value. By default returns string(typeof(x)). For arrays, returns strings like "2x2 Float64 Array".

summary summarystats


In [66]:
?summarystats


search: 
Out[66]:

No documentation found.

StatsBase.summarystats is a generic Function.

# 1 method for generic function "summarystats":
summarystats{T<:Real}(a::AbstractArray{T<:Real,N}) at /Users/arindambose/.julia/v0.4/StatsBase/src/scalarstats.jl:350
summarystats


In [67]:
summarystats(mydata, :x3)


LoadError: MethodError: `summarystats` has no method matching summarystats(::Array{Any,2}, ::Symbol)
while loading In[67], in expression starting on line 1

In [68]:
method(summarystats)


LoadError: UndefVarError: method not defined
while loading In[68], in expression starting on line 1

In [69]:
using Stats

In [70]:
summarystats(mydata, :x3)


LoadError: MethodError: `summarystats` has no method matching summarystats(::Array{Any,2}, ::Symbol)
while loading In[70], in expression starting on line 1

In [71]:
summarystats(mydata[:x3])


LoadError: indexing Array{Any,2} with types Tuple{Symbol} is not supported
while loading In[71], in expression starting on line 1

 in error at /Applications/Julia-0.4.1.app/Contents/Resources/julia/lib/julia/sys.dylib
 in getindex at abstractarray.jl:491

In [ ]: