因此,正如标题所说,R是在数据帧中随机添加一行"NA“条目。这只发生在我索引它的时候。所以像这样的一行:
data[data$subject_code==1,]
将生成我想要的所有数据,但最后有72行,它们看起来都是这样的:
NA.8 NA NA NA
为什么会发生这种情况?它不会使任何sense...there不是在整个数据帧中具有值"NA“的单个条目。
我有以下数据帧: df
Group Dist
0 A 5
1 B 2
2 A 3
3 B 1
4 B 0
5 A 5 如果Group列等于零,我会尝试删除所有与Dist匹配的行。这将删除第4行: df = df[df.Dist != 0] 但是,我还想删除第1行和第3行,因此只剩下: df
Group
如何更改行上的值,以特定字符的位置为函数?
我想用行将行中所有NA值替换为0,这些值在行S之前。在这个特定的字符S之后,必须保持行上的NAs。
S是数据按行结束的标记。
在S: NA之前应该是值(实际上是零值!!)。
在S: NA保持NA之后,根本没有值。
数据帧的一个示例在这里可用,。
我试过这个循环
for (i in 1:length(df)) {
x <- pos = 's' ; y <- pos = i if (y < x) { if (y == "NA"){ replace(y,0) } }
}
也许用which函数..。
我有10,000个数据帧(它们都可以转换为JSON)。每个数据帧有5,000行。所以,最终我想要将相当多的数据插入到我的AWS RDS数据库中。我想将它们插入到我的数据库中,但我发现使用PyMySQL的过程有点太慢,因为我遍历每一行并插入它们。
第一个问题,有没有一种方法可以直接将整个数据帧插入到表中。我尝试在dataframe库中使用"to_sql“函数,但它似乎不起作用,因为我正在使用Python3.6
第二个问题,我应该使用NoSQL而不是RDS吗?构建(大数据)结构的最佳方式是什么?
非常感谢
from sqlalchemy import create_engine
engin
我的df如下所示:
a b c d e f
1 na 2 3 4 5
1 na 2 3 4 5
1 na 2 3 4 5
1 6 2 3 4 5
如何裁剪和重塑数据帧,以使每一列的n/a都被删除,并且数据帧如下所示:
编辑;
df.dropna()正在删除所有行。
a b c d e f
1 6 2 3 4 5
这个数据帧有数百万行,我需要能够逐列删除n/a行,同时保留其中包含数据的行和列。
编辑;
df.dropna()正在删除列中的所有行。当我检查n/a的列是否为空时,df.column_name.empty()返回false。因此,在n/a的列中有数据
我有一个数据帧,我想再添加一列
数据帧有29793行。因此,我希望新列继续到数据帧的末尾。
我尝试了一些东西。在乞讨中,声明列和类似于activity = ["sitting"]的值
然后,我尝试添加到现有的数据框架中。
a['activity'] = activity
但是我得到了以下错误
ValueError: Length of values does not match the length of the index
如何解决这个问题。有什么想法吗?
编辑:
是否有一种方法可以在数据帧(左侧)的乞讨中添加列,因为现在该列被追加在右侧。
我正在尝试从三个列表创建一个dataframe,这三个列表是我使用网络抓取的数据生成的。但是,当我尝试将这些列表转换为字典,然后使用它们来构建我的pandas数据帧时,它会为每个字典项(行)输出一个数据帧,而不是将所有这些项都作为行包含在数据帧中的一个数据帧。 我认为问题出在我用来网络抓取数据的for循环中。我知道在这个问题上也有人问过类似的问题,包括这里的Pandas DataFrame created for each row和这里的Take multiple lists into dataframe,但我已经尝试了这些解决方案,但没有任何乐趣。我相信网络刮擦循环增加了一个细微的差别,使
我正在使用AWS集群来处理许多包含嵌套数据的JSON文件到Hive扁平表中。
有些数据集非常大,因此我需要将其拆分成块,并为每个块创建单独的小Hive表,这导致这些较小的表具有不同的列。例如,table1有A1....A1000列,table2有A1,A3,A100,...A1000和A1001列(所以有些列是通用的,有些列对于每个表是唯一的)。
有没有一种方法可以将这些小表(可能是数百个表,每个表有大约1e7行)附加、联合或连接到一个大的Hive表中,该表包含来自小表的所有列(对于最初没有特定列的每个小表,在缺少的单元格中包含空值)?像具有列A1...A1001的Total_table
UP
非常感谢你的阅读。
我有一个熊猫数据帧,这是多个较小的数据帧连接的结果。我想要做的是在我的最终数据框架中添加多个指示符列,这样我就可以看到每一行来自什么更小的数据帧。
这将是我想要的结果:
Forename Surname Ind_1 Ind_2 Ind_3 Ind_4
jon smith 0 0 0 1
charlie jim 1 0 0 1
ian james 0 1 0
我从CSV文件中读取了数千行数据,其中包含用于计算不同输出的数据。我读入此CSV文件并将输入存储在Pandas数据帧中。然后,我使用itterrows()遍历数据帧。有时我的代码会失败,这时我希望读入原始文件,但在失败后从一行开始处理。因此,当这种情况发生时,设置我的代码,以便在进入itterrows() for循环之前取消注释两行,并将原始数据帧分割成一定大小:
# slicing it and re-indexing when a restart is needed
df_slice = df.iloc[1292:,]
for index,row in df_slice.iterrows(
我使用循环来删除数据帧中与复杂模式匹配的特定行。该循环在单个数据帧上工作。
我想对存储在列表中的几个数据帧使用相同的过程。我考虑使用plyr,而不是在这个循环中编写另一个循环。但它并没有像预期的那样工作。
下面是一个示例:
# create a list
testlist<-list(as.data.frame(Titanic),
as.data.frame(Titanic))
# test
for(i in 1: nrow(testlist[[2]]))
if(grepl("1st",testlist[[2]][i,1],perl