Python 将数据帧转换为数组
我有一个名为“transactions4.csv”的csv文件,其中包含如下值:Python 将数据帧转换为数组,python,pandas,Python,Pandas,我有一个名为“transactions4.csv”的csv文件,其中包含如下值: column 1|column 2 --------|--------- 12345 | 10 23456 | -15 12376 | 10 56842 | 25 45678 | -5 78324 | 20 以下是我目前掌握的情况: import pandas as pd transactionsFileName = "transactions4.csv" df = pd.read_c
column 1|column 2
--------|---------
12345 | 10
23456 | -15
12376 | 10
56842 | 25
45678 | -5
78324 | 20
以下是我目前掌握的情况:
import pandas as pd
transactionsFileName = "transactions4.csv"
df = pd.read_csv(transactionsFileName)
print(df.to_string())
这将打印文件中的值,但我不确定如何将每列放入数组中
T
+作为矩阵
df.T.as_matrix()
Out[70]:
array([[12345, 23456, 12376, 56842, 45678, 78324],
[ 10, -15, 10, 25, -5, 20]], dtype=int64)
T
+作为矩阵
df.T.as_matrix()
Out[70]:
array([[12345, 23456, 12376, 56842, 45678, 78324],
[ 10, -15, 10, 25, -5, 20]], dtype=int64)
您还可以查询.values
属性
x = df.values.T
print(x)
array([[12345, 23456, 12376, 56842, 45678, 78324],
[ 10, -15, 10, 25, -5, 20]])
如果要将每列放在单独的数组中,只需将其解压缩:
i, j = x
print(i)
array([12345, 23456, 12376, 56842, 45678, 78324])
print(j)
array([ 10, -15, 10, 25, -5, 20])
您还可以查询.values
属性
x = df.values.T
print(x)
array([[12345, 23456, 12376, 56842, 45678, 78324],
[ 10, -15, 10, 25, -5, 20]])
如果要将每列放在单独的数组中,只需将其解压缩:
i, j = x
print(i)
array([12345, 23456, 12376, 56842, 45678, 78324])
print(j)
array([ 10, -15, 10, 25, -5, 20])
但为什么需要数组呢?通常一个系列就足够了,即df[“column 1”]
。但是为什么需要一个数组呢?通常一个系列就足够了,即df[“第1列”]
。