我有一个8 * 8矩阵,这是我的代码:
data = pd.DataFrame({'eventId': {0: '2015-11-23#54#',
1: '2015-11-23#55#',
2: '2015-11-23#56#',
3: '2015-11-23#54#',
4: '2015-11-23#55#',
5: '2015-11-23#56#'},
'total': {0: 2, 1: 8, 2: 9, 3: 4, 4: 3, 5: 5}})
df_events = ['2015-11-23#54#', '2015-11-23#56#']
In [14]: %timeit df = data[data["eventId"].apply(lambda x: x in df_events)]
1000 loops, best of 3: 737 µs per loop
In [15]: %%timeit df = pd.DataFrame(columns = ['eventId','total'])
....: for event in df_events:
....: df1 = data[data['eventId'] == event]
....: df = pd.concat([df,df1])
....:
100 loops, best of 3: 8.18 ms per loop
我希望它打印成方形,但每行打印一个“0”。我该怎么办?
答案 0 :(得分:3)
这是因为你每次都在内循环中使用Console.WriteLine
- 因此每个值都会打印在一个新行上。
此外,如果您将Console.WriteLine("\n");
替换为Console.WriteLine(string.Empty);
,则每行之间不会有额外的空白行。
试试这个循环,看看你对输出的看法:
for (int i = 0; i < matrix_rows; i++)
{
for (int j = 0; j < matrix_columns; j++)
{
Console.Write(matrix[i, j] + "\t");
}
Console.WriteLine(string.Empty);
}
答案 1 :(得分:3)
每次都写一个新行。请Console.Write()
代替Console.WriteLine()
答案 2 :(得分:1)
因为你的数组是空的!
看,你创建它
double[,] matrix = new double[matrix_rows, matrix_columns];
然后打印出来。 double
的默认值为0